diff --git a/tests/test_pagure_flask_ui_fork.py b/tests/test_pagure_flask_ui_fork.py index 62795d2..88b7d23 100644 --- a/tests/test_pagure_flask_ui_fork.py +++ b/tests/test_pagure_flask_ui_fork.py @@ -1847,6 +1847,7 @@ index 0000000..2a552bb send_email.return_value = True + # User not logged in output = self.app.post('fork_edit/test/edit/master/f/sources') self.assertEqual(output.status_code, 302) @@ -1858,7 +1859,7 @@ index 0000000..2a552bb user = tests.FakeUser() user.username = 'pingou' with tests.user_set(pagure.APP, user): - # No csrf_token + # Invalid request output = self.app.post('fork_edit/test/edit/master/f/source') self.assertEqual(output.status_code, 400) @@ -1873,7 +1874,7 @@ index 0000000..2a552bb 'csrf_token': csrf_token, } - # No files added + # No files can be found since they are not added output = self.app.post('fork_edit/test/edit/master/f/sources', data=data, follow_redirects=True) self.assertEqual(output.status_code, 404) @@ -1886,7 +1887,7 @@ index 0000000..2a552bb 'csrf_token': csrf_token, } - # No csrf_token + # Invalid request output = self.app.post('fork_edit/test/edit/master/f/sources', follow_redirects=True) self.assertEqual(output.status_code, 400) @@ -1909,7 +1910,7 @@ index 0000000..2a552bb 'Fork and Edit\n \n', output.data) - # Check fork-edit doesn't come + # Check fork-edit doesn't show for binary files output = self.app.get('/test/blob/master/f/test.jpg') self.assertEqual(output.status_code, 200) self.assertNotIn( @@ -1939,6 +1940,32 @@ index 0000000..2a552bb self.assertEqual(output.status_code, 400) self.assertIn('

Cannot edit binary files

', output.data) + # Check fork-edit shows when user is not logged in + output = self.app.get('/test/blob/master/f/sources') + self.assertEqual(output.status_code, 200) + self.assertIn( + 'Fork and Edit\n \n', + output.data) + + # Check if fork-edit shows for different user + user.username = 'pingou' + with tests.user_set(pagure.APP, user): + + # Check if button exists + output = self.app.get('/test/blob/master/f/sources') + self.assertEqual(output.status_code, 200) + self.assertIn( + 'Fork and Edit\n \n', + output.data) + + # Check fork-edit doesn't show for binary + output = self.app.get('/test/blob/master/f/test.jpg') + self.assertEqual(output.status_code, 200) + self.assertNotIn( + 'Fork and Edit\n \n', + output.data) + + if __name__ == '__main__': SUITE = unittest.TestLoader().loadTestsFromTestCase(PagureFlaskForktests) unittest.TextTestRunner(verbosity=2).run(SUITE)