From 5a195496975d6ad4902383c22631b3b0545848fd Mon Sep 17 00:00:00 2001 From: Ryan Lerch Date: Feb 12 2016 08:38:41 +0000 Subject: [PATCH 1/6] made the actions for the issue itself a buttonbar now it looks similar to the actions for comments --- diff --git a/pagure/templates/_formhelper.html b/pagure/templates/_formhelper.html index 996538a..4842890 100644 --- a/pagure/templates/_formhelper.html +++ b/pagure/templates/_formhelper.html @@ -178,17 +178,19 @@ {%- endautoescape -%} - + + {% endmacro %} From 40553489fd41765ad99f1cc31c52737feb7882f7 Mon Sep 17 00:00:00 2001 From: Ryan Lerch Date: Feb 12 2016 08:56:15 +0000 Subject: [PATCH 2/6] returned the delete issue button --- diff --git a/pagure/templates/_formhelper.html b/pagure/templates/_formhelper.html index 4842890..ef74452 100644 --- a/pagure/templates/_formhelper.html +++ b/pagure/templates/_formhelper.html @@ -169,7 +169,7 @@ {% endmacro %} -{% macro show_initial_comment(comment, username, repo, issueid, repo_admin) %} +{% macro show_initial_comment(comment, username, repo, issueid, repo_admin, form) %}
@@ -179,18 +179,29 @@
+
+ title="Reply to the initial comment - loose formatting"> {% if repo_admin or ( g.fas_user and g.fas_user.username == comment.user.username) %} - {% endif %} + {% if repo_admin %} + + {{ form.csrf_token }} + {% endif %}
+
{% endmacro %} diff --git a/pagure/templates/issue.html b/pagure/templates/issue.html index 2a0c445..1332a93 100644 --- a/pagure/templates/issue.html +++ b/pagure/templates/issue.html @@ -30,7 +30,7 @@ {{ issue.date_created | humanize}} by {{ issue.user.user }} - {{ show_initial_comment(issue, username, repo,issueid, repo_admin) }} + {{ show_initial_comment(issue, username, repo,issueid, repo_admin, form) }}
Date: Feb 12 2016 09:58:45 +0000 Subject: [PATCH 3/6] Adjust indentation and drop the aria-label --- diff --git a/pagure/templates/_formhelper.html b/pagure/templates/_formhelper.html index ef74452..eddd8fb 100644 --- a/pagure/templates/_formhelper.html +++ b/pagure/templates/_formhelper.html @@ -179,29 +179,32 @@
- -
- - - - {% if repo_admin or ( - g.fas_user and g.fas_user.username == comment.user.username) %} - - - {% endif %} - {% if repo_admin %} - - {{ form.csrf_token }} - {% endif %} -
- +
+
+ + + + {% if repo_admin or ( + g.fas_user and g.fas_user.username == comment.user.username) %} + + + {% endif %} + {% if repo_admin %} + + {{ form.csrf_token }} + {% endif %} +
+
{% endmacro %} From 16181741689686f79552b1a91532b4d82ecf8b6a Mon Sep 17 00:00:00 2001 From: Pierre-Yves Chibon Date: Feb 12 2016 10:12:34 +0000 Subject: [PATCH 4/6] Adjust unit-tests to the change in the issue page --- diff --git a/tests/test_pagure_flask_ui_issues.py b/tests/test_pagure_flask_ui_issues.py index eb87a9c..ef4f6e4 100644 --- a/tests/test_pagure_flask_ui_issues.py +++ b/tests/test_pagure_flask_ui_issues.py @@ -130,8 +130,9 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #1: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) # Project w/o issue tracker repo = pagure.lib.get_project(self.session, 'test') @@ -188,8 +189,9 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #1: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) # Project w/o issue tracker repo = pagure.lib.get_project(self.session, 'test') @@ -308,7 +310,8 @@ class PagureFlaskIssuestests(tests.Modeltests): self.assertEqual(output.status_code, 200) # Not authentified = No edit self.assertNotIn( - '', + '', output.data) self.assertTrue( '' @@ -321,7 +324,7 @@ class PagureFlaskIssuestests(tests.Modeltests): self.assertEqual(output.status_code, 200) # Not author nor admin = No edit self.assertNotIn( - '', + '', output.data) self.assertFalse( 'Login to comment on this ticket.' @@ -332,8 +335,9 @@ class PagureFlaskIssuestests(tests.Modeltests): output = self.app.get('/test/issue/1') self.assertEqual(output.status_code, 200) self.assertIn( - '', output.data) + '', + output.data) csrf_token = output.data.split( 'name="csrf_token" type="hidden" value="')[1].split('">')[0] @@ -374,8 +378,9 @@ class PagureFlaskIssuestests(tests.Modeltests): '', output.data) self.assertIn( - '', output.data) + '', + output.data) # Project w/o issue tracker repo = pagure.lib.get_project(self.session, 'test') @@ -423,8 +428,9 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #1: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) csrf_token = output.data.split( 'name="csrf_token" type="hidden" value="')[1].split('">')[0] @@ -448,8 +454,9 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #1: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) self.assertFalse( '' in output.data) @@ -462,8 +469,9 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #1: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) self.assertFalse( '' in output.data) @@ -476,8 +484,9 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #1: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) self.assertIn( '\n Successfully edited issue #1', output.data) @@ -498,8 +507,9 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #1: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) self.assertIn( '\n Comment added', output.data) @@ -526,8 +536,9 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #1: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) self.assertIn( '\n Tag added: tag2', output.data) @@ -554,8 +565,9 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #1: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) self.assertIn( '\n No user "ralph" found', output.data) @@ -579,8 +591,9 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #1: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) self.assertIn( '\n Issue assigned', output.data) @@ -627,8 +640,9 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #2: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) self.assertIn( '\n You cannot close a ticket ' 'that has ticket depending that are still open.', @@ -703,8 +717,9 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #1: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) csrf_token = output.data.split( 'name="csrf_token" type="hidden" value="')[1].split('">')[0] @@ -721,8 +736,9 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #1: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) self.assertIn( '\n Comment added', output.data) @@ -762,8 +778,9 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #1: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) self.assertIn( '\n Comment removed', output.data) @@ -820,8 +837,9 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #1: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) csrf_token = output.data.split( 'name="csrf_token" type="hidden" value="')[1].split('">')[0] @@ -838,8 +856,9 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #1: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) self.assertIn( '\n Dependency added', output.data) @@ -856,10 +875,12 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #1: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) self.assertNotIn( - '\n Dependency added', output.data) + '\n Dependency added', + output.data) repo = pagure.lib.get_project(self.session, 'test') issue = pagure.lib.search_issues(self.session, repo, issueid=1) @@ -909,8 +930,9 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #1: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) csrf_token = output.data.split( 'name="csrf_token" type="hidden" value="')[1].split('">')[0] @@ -927,8 +949,9 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #1: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) self.assertIn( '\n Dependency added', output.data) @@ -945,8 +968,9 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #1: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) self.assertNotIn( '\n Dependency added', output.data) @@ -989,8 +1013,9 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #1: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) csrf_token = output.data.split( 'name="csrf_token" type="hidden" value="')[1].split('">')[0] @@ -1464,7 +1489,8 @@ class PagureFlaskIssuestests(tests.Modeltests): self.assertIn( 'Issues - test - Pagure', output.data) self.assertIn( - '\n Issue deleted', output.data) + '\n Issue deleted', + output.data) # Project w/o issue tracker repo = pagure.lib.get_project(self.session, 'test') @@ -1508,8 +1534,9 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #1: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) csrf_token = output.data.split( 'name="csrf_token" type="hidden" value="')[1].split('">')[0] @@ -1526,8 +1553,9 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #1: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) self.assertIn( '\n Comment added', output.data) @@ -1538,7 +1566,9 @@ class PagureFlaskIssuestests(tests.Modeltests): repo = pagure.lib.get_project(self.session, 'test') issue = pagure.lib.search_issues(self.session, repo, issueid=1) self.assertEqual(len(issue.comments), 1) - self.assertEqual(issue.comments[0].comment, 'Woohoo a second comment !') + self.assertEqual( + issue.comments[0].comment, + 'Woohoo a second comment !') data = { 'csrf_token': csrf_token, @@ -1569,8 +1599,9 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #1: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) self.assertIn( '\n Comment updated', output.data) @@ -1606,8 +1637,9 @@ class PagureFlaskIssuestests(tests.Modeltests): 'Issue #1: Test issue - test - Pagure', output.data) self.assertIn( - '', output.data) + '', + output.data) self.assertIn( '\n Comment updated', output.data) From 9fae46cfd803eeac0b30d44fdfae9543da52aa64 Mon Sep 17 00:00:00 2001 From: Pierre-Yves Chibon Date: Feb 12 2016 10:15:51 +0000 Subject: [PATCH 5/6] Ensure pagure.ui.filters uses the proper session when running the tests --- diff --git a/tests/test_pagure_flask_ui_admin.py b/tests/test_pagure_flask_ui_admin.py index 377f95b..5c55c21 100644 --- a/tests/test_pagure_flask_ui_admin.py +++ b/tests/test_pagure_flask_ui_admin.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- """ - (c) 2015 - Copyright Red Hat Inc + (c) 2015-2016 - Copyright Red Hat Inc Authors: Pierre-Yves Chibon @@ -38,6 +38,7 @@ class PagureFlaskAdmintests(tests.Modeltests): pagure.SESSION = self.session pagure.ui.SESSION = self.session pagure.ui.app.SESSION = self.session + pagure.ui.filters.SESSION = self.session pagure.ui.repo.SESSION = self.session pagure.ui.admin.SESSION = self.session diff --git a/tests/test_pagure_flask_ui_app.py b/tests/test_pagure_flask_ui_app.py index 3cd7f14..4715cf3 100644 --- a/tests/test_pagure_flask_ui_app.py +++ b/tests/test_pagure_flask_ui_app.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- """ - (c) 2015 - Copyright Red Hat Inc + (c) 2015-2016 - Copyright Red Hat Inc Authors: Pierre-Yves Chibon @@ -37,6 +37,7 @@ class PagureFlaskApptests(tests.Modeltests): pagure.SESSION = self.session pagure.ui.SESSION = self.session pagure.ui.app.SESSION = self.session + pagure.ui.filters.SESSION = self.session pagure.ui.repo.SESSION = self.session pagure.APP.config['GIT_FOLDER'] = tests.HERE diff --git a/tests/test_pagure_flask_ui_groups.py b/tests/test_pagure_flask_ui_groups.py index 1a618fc..26e392d 100644 --- a/tests/test_pagure_flask_ui_groups.py +++ b/tests/test_pagure_flask_ui_groups.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- """ - (c) 2015 - Copyright Red Hat Inc + (c) 2015-2016 - Copyright Red Hat Inc Authors: Pierre-Yves Chibon @@ -38,6 +38,7 @@ class PagureFlaskGroupstests(tests.Modeltests): pagure.ui.SESSION = self.session pagure.ui.groups.SESSION = self.session pagure.ui.repo.SESSION = self.session + pagure.ui.filters.SESSION = self.session pagure.APP.config['GIT_FOLDER'] = tests.HERE pagure.APP.config['FORK_FOLDER'] = os.path.join( diff --git a/tests/test_pagure_flask_ui_issues.py b/tests/test_pagure_flask_ui_issues.py index ef4f6e4..7c74a72 100644 --- a/tests/test_pagure_flask_ui_issues.py +++ b/tests/test_pagure_flask_ui_issues.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- """ - (c) 2015 - Copyright Red Hat Inc + (c) 2015-2016 - Copyright Red Hat Inc Authors: Pierre-Yves Chibon @@ -40,6 +40,7 @@ class PagureFlaskIssuestests(tests.Modeltests): pagure.ui.app.SESSION = self.session pagure.ui.issues.SESSION = self.session pagure.ui.repo.SESSION = self.session + pagure.ui.filters.SESSION = self.session pagure.APP.config['GIT_FOLDER'] = tests.HERE pagure.APP.config['FORK_FOLDER'] = os.path.join( diff --git a/tests/test_pagure_flask_ui_login.py b/tests/test_pagure_flask_ui_login.py index 454a50f..de880cf 100644 --- a/tests/test_pagure_flask_ui_login.py +++ b/tests/test_pagure_flask_ui_login.py @@ -49,6 +49,7 @@ class PagureFlaskLogintests(tests.Modeltests): pagure.ui.SESSION = self.session pagure.ui.app.SESSION = self.session pagure.ui.login.SESSION = self.session + pagure.ui.filters.SESSION = self.session self.app = pagure.APP.test_client() diff --git a/tests/test_pagure_flask_ui_plugins.py b/tests/test_pagure_flask_ui_plugins.py index f89c3d4..17b89c4 100644 --- a/tests/test_pagure_flask_ui_plugins.py +++ b/tests/test_pagure_flask_ui_plugins.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- """ - (c) 2015 - Copyright Red Hat Inc + (c) 2015-2016 - Copyright Red Hat Inc Authors: Pierre-Yves Chibon @@ -53,6 +53,7 @@ class PagureFlaskPluginstests(tests.Modeltests): pagure.ui.app.SESSION = self.session pagure.ui.plugins.SESSION = self.session pagure.ui.repo.SESSION = self.session + pagure.ui.filters.SESSION = self.session pagure.APP.config['GIT_FOLDER'] = tests.HERE pagure.APP.config['FORK_FOLDER'] = os.path.join( diff --git a/tests/test_pagure_flask_ui_plugins_fedmsg.py b/tests/test_pagure_flask_ui_plugins_fedmsg.py index 1a2cc91..6366143 100644 --- a/tests/test_pagure_flask_ui_plugins_fedmsg.py +++ b/tests/test_pagure_flask_ui_plugins_fedmsg.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- """ - (c) 2015 - Copyright Red Hat Inc + (c) 2015-2016 - Copyright Red Hat Inc Authors: Pierre-Yves Chibon @@ -40,6 +40,7 @@ class PagureFlaskPluginFedmsgtests(tests.Modeltests): pagure.ui.app.SESSION = self.session pagure.ui.plugins.SESSION = self.session pagure.ui.repo.SESSION = self.session + pagure.ui.filters.SESSION = self.session pagure.APP.config['GIT_FOLDER'] = tests.HERE pagure.APP.config['FORK_FOLDER'] = os.path.join( diff --git a/tests/test_pagure_flask_ui_plugins_irc.py b/tests/test_pagure_flask_ui_plugins_irc.py index 3a7d818..891a9c6 100644 --- a/tests/test_pagure_flask_ui_plugins_irc.py +++ b/tests/test_pagure_flask_ui_plugins_irc.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- """ - (c) 2015 - Copyright Red Hat Inc + (c) 2015-2016 - Copyright Red Hat Inc Authors: Pierre-Yves Chibon @@ -40,6 +40,7 @@ class PagureFlaskPluginIRCtests(tests.Modeltests): pagure.ui.app.SESSION = self.session pagure.ui.plugins.SESSION = self.session pagure.ui.repo.SESSION = self.session + pagure.ui.filters.SESSION = self.session pagure.APP.config['GIT_FOLDER'] = tests.HERE pagure.APP.config['FORK_FOLDER'] = os.path.join( diff --git a/tests/test_pagure_flask_ui_plugins_mail.py b/tests/test_pagure_flask_ui_plugins_mail.py index ee84d32..13c1d92 100644 --- a/tests/test_pagure_flask_ui_plugins_mail.py +++ b/tests/test_pagure_flask_ui_plugins_mail.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- """ - (c) 2015 - Copyright Red Hat Inc + (c) 2015-2016 - Copyright Red Hat Inc Authors: Pierre-Yves Chibon @@ -40,6 +40,7 @@ class PagureFlaskPluginMailtests(tests.Modeltests): pagure.ui.app.SESSION = self.session pagure.ui.plugins.SESSION = self.session pagure.ui.repo.SESSION = self.session + pagure.ui.filters.SESSION = self.session pagure.APP.config['GIT_FOLDER'] = tests.HERE pagure.APP.config['FORK_FOLDER'] = os.path.join( diff --git a/tests/test_pagure_flask_ui_plugins_pagure_hook.py b/tests/test_pagure_flask_ui_plugins_pagure_hook.py index a4b7c2f..24062a8 100644 --- a/tests/test_pagure_flask_ui_plugins_pagure_hook.py +++ b/tests/test_pagure_flask_ui_plugins_pagure_hook.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- """ - (c) 2015 - Copyright Red Hat Inc + (c) 2015-2016 - Copyright Red Hat Inc Authors: Pierre-Yves Chibon @@ -40,6 +40,7 @@ class PagureFlaskPluginPagureHooktests(tests.Modeltests): pagure.ui.app.SESSION = self.session pagure.ui.plugins.SESSION = self.session pagure.ui.repo.SESSION = self.session + pagure.ui.filters.SESSION = self.session pagure.APP.config['GIT_FOLDER'] = tests.HERE pagure.APP.config['FORK_FOLDER'] = os.path.join( diff --git a/tests/test_pagure_flask_ui_plugins_pagure_request_hook.py b/tests/test_pagure_flask_ui_plugins_pagure_request_hook.py index d470c78..6e56213 100644 --- a/tests/test_pagure_flask_ui_plugins_pagure_request_hook.py +++ b/tests/test_pagure_flask_ui_plugins_pagure_request_hook.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- """ - (c) 2015 - Copyright Red Hat Inc + (c) 2015-2016 - Copyright Red Hat Inc Authors: Pierre-Yves Chibon @@ -40,6 +40,7 @@ class PagureFlaskPluginPagureRequestHooktests(tests.Modeltests): pagure.ui.app.SESSION = self.session pagure.ui.plugins.SESSION = self.session pagure.ui.repo.SESSION = self.session + pagure.ui.filters.SESSION = self.session pagure.APP.config['GIT_FOLDER'] = tests.HERE pagure.APP.config['FORK_FOLDER'] = os.path.join( diff --git a/tests/test_pagure_flask_ui_plugins_pagure_ticket_hook.py b/tests/test_pagure_flask_ui_plugins_pagure_ticket_hook.py index 32ec8c8..de4d541 100644 --- a/tests/test_pagure_flask_ui_plugins_pagure_ticket_hook.py +++ b/tests/test_pagure_flask_ui_plugins_pagure_ticket_hook.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- """ - (c) 2015 - Copyright Red Hat Inc + (c) 2015-2016 - Copyright Red Hat Inc Authors: Pierre-Yves Chibon @@ -40,6 +40,7 @@ class PagureFlaskPluginPagureTicketHooktests(tests.Modeltests): pagure.ui.app.SESSION = self.session pagure.ui.plugins.SESSION = self.session pagure.ui.repo.SESSION = self.session + pagure.ui.filters.SESSION = self.session pagure.APP.config['GIT_FOLDER'] = tests.HERE pagure.APP.config['FORK_FOLDER'] = os.path.join( From e26ce686cb3cbcdfba3b1c0d001d441695dc30be Mon Sep 17 00:00:00 2001 From: Pierre-Yves Chibon Date: Feb 12 2016 10:19:28 +0000 Subject: [PATCH 6/6] Add checks for the delete issue button --- diff --git a/tests/test_pagure_flask_ui_issues.py b/tests/test_pagure_flask_ui_issues.py index 7c74a72..d1d7719 100644 --- a/tests/test_pagure_flask_ui_issues.py +++ b/tests/test_pagure_flask_ui_issues.py @@ -325,8 +325,13 @@ class PagureFlaskIssuestests(tests.Modeltests): self.assertEqual(output.status_code, 200) # Not author nor admin = No edit self.assertNotIn( - '', - output.data) + '', + output.data) + self.assertNotIn( + '