From ed8be1910e9a202e3d69aab78bc48356be382c07 Mon Sep 17 00:00:00 2001 From: Pierre-Yves Chibon Date: Jul 29 2016 10:11:52 +0000 Subject: [PATCH 1/2] Do not show the new issue button when issues are off --- diff --git a/pagure/templates/repo_master.html b/pagure/templates/repo_master.html index 0019014..015dc65 100644 --- a/pagure/templates/repo_master.html +++ b/pagure/templates/repo_master.html @@ -19,8 +19,11 @@ {% if authenticated %}
- New Issue + {% if repo.settings.get('issue_tracker', True) + and config.get('ENABLE_TICKETS', True)%} + New Issue + {% endif %}
{% if not repo.is_fork %}
Date: Jul 29 2016 10:15:03 +0000 Subject: [PATCH 2/2] Add unit-tests checking when the new issue button is shown/hidden --- diff --git a/tests/test_pagure_flask_ui_issues.py b/tests/test_pagure_flask_ui_issues.py index 71b7281..84f96ad 100644 --- a/tests/test_pagure_flask_ui_issues.py +++ b/tests/test_pagure_flask_ui_issues.py @@ -276,6 +276,15 @@ class PagureFlaskIssuestests(tests.Modeltests): self.assertTrue( '

\n 0 Closed Issues' in output.data) + # New issue button is shown + user = tests.FakeUser() + with tests.user_set(pagure.APP, user): + output = self.app.get('/test') + self.assertEqual(output.status_code, 200) + self.assertIn( + 'class="btn btn-success btn-sm">New Issue', + output.data) + # Project w/o issue tracker repo = pagure.lib.get_project(self.session, 'test') repo.settings = {'issue_tracker': False} @@ -285,6 +294,15 @@ class PagureFlaskIssuestests(tests.Modeltests): output = self.app.get('/test/issues') self.assertEqual(output.status_code, 404) + # New issue button is hidden + user = tests.FakeUser() + with tests.user_set(pagure.APP, user): + output = self.app.get('/test') + self.assertEqual(output.status_code, 200) + self.assertNotIn( + 'class="btn btn-success btn-sm">New Issue', + output.data) + @patch('pagure.lib.git.update_git') @patch('pagure.lib.notify.send_email') def test_view_issue(self, p_send_email, p_ugt):