Browse Source

Start work on the unit-tests

Pierre-Yves Chibon 6 years ago
parent
commit
b1ec6ec32b

+ 1 - 0
pagure/ui/fork.py

@@ -710,6 +710,7 @@ def pull_request_edit_comment(
         form=form,
         comment=comment,
         is_js=is_js,
+        confirmationform=pagure.forms.ConfirmationForm(),
     )
 
 

+ 1 - 1
runtests.sh

@@ -2,4 +2,4 @@
 
 PAGURE_CONFIG=`pwd`/tests/test_config \
 PYTHONPATH=pagure \
-./nosetests --with-html --with-coverage --cover-erase --cover-package=pagure --with-pagureperf $*
+./nosetests --with-coverage --cover-erase --cover-package=pagure --with-pagureperf $*

+ 4 - 4
tests/test_pagure_flask_api_ui_private_repo.py

@@ -380,8 +380,8 @@ class PagurePrivateRepotest(tests.Modeltests):
         output = self.app.get('/')
         self.assertEqual(output.status_code, 200)
         self.assertIn(
-            '<h2 class="mb-1">All Projects '
-            '<span class="badge badge-secondary">0</span></h2>',
+            '<h3 class="m-0 font-weight-bold">All Projects '
+            '<span class="badge badge-secondary">0</span></h3>',
             output.get_data(as_text=True))
 
         # Add a private project
@@ -410,8 +410,8 @@ class PagurePrivateRepotest(tests.Modeltests):
         self.assertEqual(output.status_code, 200)
         output_text = output.get_data(as_text=True)
         self.assertIn(
-            '<h2 class="mb-1">All Projects '
-            '<span class="badge badge-secondary">1</span></h2>',
+            '<h3 class="m-0 font-weight-bold">All Projects '
+            '<span class="badge badge-secondary">1</span></h3>',
             output_text)
 
         user = tests.FakeUser(username='foo')

+ 4 - 4
tests/test_pagure_flask_ui_app_index.py

@@ -52,8 +52,8 @@ class PagureFlaskAppIndextests(tests.Modeltests):
         output_text = output.get_data(as_text=True)
         self.assertIn('<title>Home - Pagure</title>', output_text)
         self.assertIn(
-            '<h2 class="mb-1">All Projects '
-            '<span class="badge badge-secondary">0</span></h2>',
+            '<h3 class="m-0 font-weight-bold">All Projects '
+            '<span class="badge badge-secondary">0</span></h3>',
             output_text)
 
         tests.create_projects(self.session)
@@ -61,8 +61,8 @@ class PagureFlaskAppIndextests(tests.Modeltests):
         output = self.app.get('/?page=abc')
         self.assertEqual(output.status_code, 200)
         self.assertIn(
-            '<h2 class="mb-1">All Projects '
-            '<span class="badge badge-secondary">3</span></h2>',
+            '<h3 class="m-0 font-weight-bold">All Projects '
+            '<span class="badge badge-secondary">3</span></h3>',
             output.get_data(as_text=True))
 
     def test_index_logged_in(self):

+ 7 - 3
tests/test_pagure_flask_ui_fork.py

@@ -450,7 +450,7 @@ class PagureFlaskForktests(tests.Modeltests):
                 'A commit on branch feature', output_text)
             self.assertNotIn(
                 'Merge #1 `PR from the feature branch`', output_text)
-            
+
             # Check if the closing notification was added
             output = self.app.get('/test/pull-request/1')
             self.assertIn(
@@ -1728,8 +1728,12 @@ index 0000000..2a552bb
                 soup.find("title").string,
                 'PR#1: PR from the feature branch - test\n - Pagure'
             )
-            h3 = soup.find("h3")
+
+            h3 = soup.find_all("h3")
             self.assertIsNotNone(h3)
+            self.assertEqual(len(h3), 3)
+            # keep the last one only
+            h3 = h3[2]
             self.assertListEqual(
                 h3.find("span")["class"], ["label", "label-default"])
             self.assertEqual(h3.find("span").string, "PR#1")
@@ -2854,7 +2858,7 @@ index 0000000..2a552bb
                 'Merge #1 `PR from the feature branch`', output_text)
             self.assertIn(
                 'A commit on branch feature', output_text)
-            
+
             # Check if the closing notification was added
             output = self.app.get('/test/pull-request/1')
             self.assertIn(

+ 66 - 55
tests/test_pagure_flask_ui_groups.py

@@ -35,8 +35,8 @@ class PagureFlaskGroupstests(tests.Modeltests):
         """ Test the group_lists endpoint. """
         output = self.app.get('/groups')
         self.assertIn(
-            '<h2 class="m-b-1">\n'
-            '    Groups <span class="label label-default">0</span>',
+            '<h3 class="font-weight-bold">\n'
+            '      Groups <span class="badge badge-secondary">0</span>',
             output.get_data(as_text=True))
 
     def test_add_group_index_auth(self):
@@ -117,8 +117,8 @@ class PagureFlaskGroupstests(tests.Modeltests):
                 '</button>\n                      Group `test_group` created.',
                 output.get_data(as_text=True))
             self.assertIn(
-                '<h2 class="m-b-1">\n'
-                '    Groups <span class="label label-default">1</span>',
+                '<h3 class="font-weight-bold">\n'
+                '      Groups <span class="badge badge-secondary">1</span>',
                 output.get_data(as_text=True))
 
         user = tests.FakeUser(
@@ -149,8 +149,8 @@ class PagureFlaskGroupstests(tests.Modeltests):
                 '</button>\n                      Group `test_admin_group` '
                 'created.',output.get_data(as_text=True))
             self.assertIn(
-                '<h2 class="m-b-1">\n'
-                '    Groups <span class="label label-default">2</span>',
+                '<h3 class="font-weight-bold">\n'
+                '      Groups <span class="badge badge-secondary">2</span>',
                 output.get_data(as_text=True))
 
     def test_edit_group(self):
@@ -221,8 +221,8 @@ class PagureFlaskGroupstests(tests.Modeltests):
                 '</button>\n                      You are not '
                 'allowed to edit this group', output.get_data(as_text=True))
             self.assertIn(
-                '<span class="oi" data-glyph="people"></span> '
-                '&nbsp;Test Group', output.get_data(as_text=True))
+                '<h3 class="mb-0 font-weight-bold">Test Group</h3>',
+                output.get_data(as_text=True))
 
         user.username = 'pingou'
         with tests.user_set(self.app.application, user):
@@ -238,8 +238,8 @@ class PagureFlaskGroupstests(tests.Modeltests):
             self.assertIn(
                 '<title>Group test_group - Pagure</title>', output.get_data(as_text=True))
             self.assertIn(
-                '<span class="oi" data-glyph="people"></span> '
-                '&nbsp;Test Group', output.get_data(as_text=True))
+                '<h3 class="mb-0 font-weight-bold">Test Group edited</h3>',
+                output.get_data(as_text=True))
             self.assertIn(
                 'Group &#34;Test Group edited&#34; (test_group) edited',
                 output.get_data(as_text=True))
@@ -257,8 +257,8 @@ class PagureFlaskGroupstests(tests.Modeltests):
                 '<p>No groups have been created on this pagure instance '
                 'yet</p>', output.get_data(as_text=True))
             self.assertIn(
-                '<h2 class="m-b-1">\n'
-                '    Groups <span class="label label-default">0</span>',
+                '<h3 class="font-weight-bold">\n'
+                '      Groups <span class="badge badge-secondary">0</span>',
                 output.get_data(as_text=True))
 
         self.test_add_group()
@@ -267,8 +267,8 @@ class PagureFlaskGroupstests(tests.Modeltests):
             output = self.app.post('/group/foo/delete', follow_redirects=True)
             self.assertEqual(output.status_code, 200)
             self.assertIn(
-                '<h2 class="m-b-1">\n'
-                '    Groups <span class="label label-default">1</span>',
+                '<h3 class="font-weight-bold">\n'
+                '      Groups <span class="badge badge-secondary">1</span>',
                 output.get_data(as_text=True))
 
             output = self.app.get('/new/')
@@ -288,8 +288,8 @@ class PagureFlaskGroupstests(tests.Modeltests):
                 '</button>\n                      No group `bar` found',
                 output.get_data(as_text=True))
             self.assertIn(
-                '<h2 class="m-b-1">\n'
-                '    Groups <span class="label label-default">1</span>',
+                '<h3 class="font-weight-bold">\n'
+                '      Groups <span class="badge badge-secondary">1</span>',
                 output.get_data(as_text=True))
 
             output = self.app.post(
@@ -299,8 +299,8 @@ class PagureFlaskGroupstests(tests.Modeltests):
                 '</button>\n                      You are not allowed to '
                 'delete the group test_group', output.get_data(as_text=True))
             self.assertIn(
-                '<h2 class="m-b-1">\n'
-                '    Groups <span class="label label-default">1</span>',
+                '<h3 class="font-weight-bold">\n'
+                '      Groups <span class="badge badge-secondary">1</span>',
                 output.get_data(as_text=True))
 
         user.username = 'bar'
@@ -320,8 +320,8 @@ class PagureFlaskGroupstests(tests.Modeltests):
                 '</button>\n                      Group `test_group` has '
                 'been deleted', output.get_data(as_text=True))
             self.assertIn(
-                '<h2 class="m-b-1">\n'
-                '    Groups <span class="label label-default">0</span>',
+                '<h3 class="font-weight-bold">\n'
+                '      Groups <span class="badge badge-secondary">0</span>',
                 output.get_data(as_text=True))
 
     def test_view_group(self):
@@ -336,8 +336,8 @@ class PagureFlaskGroupstests(tests.Modeltests):
             output = self.app.get('/group/test_group')
             self.assertEqual(output.status_code, 200)
             self.assertIn(
-                '<span class="oi" data-glyph="people"></span> &nbsp;'
-                'Test Group', output.get_data(as_text=True))
+                '<h3 class="mb-0 font-weight-bold">Test Group</h3>',
+                output.get_data(as_text=True))
 
             output = self.app.get('/group/test_admin_group')
             self.assertEqual(output.status_code, 404)
@@ -350,9 +350,10 @@ class PagureFlaskGroupstests(tests.Modeltests):
             output = self.app.get('/group/test_admin_group')
             self.assertEqual(output.status_code, 200)
             self.assertIn(
-                '<span class="oi" data-glyph="people"></span> &nbsp;'
-                'Test Admin Group', output.get_data(as_text=True))
-            self.assertEqual(output.get_data(as_text=True).count('<a href="/user/'), 1)
+                '<h3 class="mb-0 font-weight-bold">Test Admin Group</h3>',
+                output.get_data(as_text=True))
+            self.assertEqual(
+                output.get_data(as_text=True).count('<a href="/user/'), 2)
 
             csrf_token = output.get_data(as_text=True).split(
                 'name="csrf_token" type="hidden" value="')[1].split('">')[0]
@@ -365,9 +366,10 @@ class PagureFlaskGroupstests(tests.Modeltests):
             output = self.app.post('/group/test_admin_group', data=data)
             self.assertEqual(output.status_code, 200)
             self.assertIn(
-                '<span class="oi" data-glyph="people"></span> &nbsp;'
-                'Test Admin Group', output.get_data(as_text=True))
-            self.assertEqual(output.get_data(as_text=True).count('<a href="/user/'), 1)
+                '<h3 class="mb-0 font-weight-bold">Test Admin Group</h3>',
+                output.get_data(as_text=True))
+            self.assertEqual(
+                output.get_data(as_text=True).count('<a href="/user/'), 2)
 
             # Invalid user
             data = {
@@ -381,9 +383,10 @@ class PagureFlaskGroupstests(tests.Modeltests):
                 '</button>\n                      No user `bar` found',
                 output.get_data(as_text=True))
             self.assertIn(
-                '<span class="oi" data-glyph="people"></span> &nbsp;'
-                'Test Admin Group', output.get_data(as_text=True))
-            self.assertEqual(output.get_data(as_text=True).count('<a href="/user/'), 1)
+                '<h3 class="mb-0 font-weight-bold">Test Admin Group</h3>',
+                output.get_data(as_text=True))
+            self.assertEqual(
+                output.get_data(as_text=True).count('<a href="/user/'), 2)
 
             # All good
             data = {
@@ -396,9 +399,10 @@ class PagureFlaskGroupstests(tests.Modeltests):
                 '</button>\n                      User `foo` added to the '
                 'group `test_admin_group`.', output.get_data(as_text=True))
             self.assertIn(
-                '<span class="oi" data-glyph="people"></span> &nbsp;'
-                'Test Admin Group', output.get_data(as_text=True))
-            self.assertEqual(output.get_data(as_text=True).count('<a href="/user/'), 2)
+                '<h3 class="mb-0 font-weight-bold">Test Admin Group</h3>',
+                output.get_data(as_text=True))
+            self.assertEqual(
+                output.get_data(as_text=True).count('<a href="/user/'), 3)
 
     def test_group_user_delete(self):
         """ Test the group_user_delete endpoint. """
@@ -419,9 +423,10 @@ class PagureFlaskGroupstests(tests.Modeltests):
                 '/group/test_group/bar/delete', follow_redirects=True)
             self.assertEqual(output.status_code, 200)
             self.assertIn(
-                '<span class="oi" data-glyph="people"></span> &nbsp;'
-                'Test Group', output.get_data(as_text=True))
-            self.assertEqual(output.get_data(as_text=True).count('<a href="/user/'), 1)
+                '<h3 class="mb-0 font-weight-bold">Test Group</h3>',
+                output.get_data(as_text=True))
+            self.assertEqual(
+                output.get_data(as_text=True).count('<a href="/user/'), 2)
 
             output = self.app.get('/new/')
             csrf_token = output.get_data(as_text=True).split(
@@ -436,9 +441,10 @@ class PagureFlaskGroupstests(tests.Modeltests):
                 '</button>\n                      No user `bar` found',
                 output.get_data(as_text=True))
             self.assertIn(
-                '<span class="oi" data-glyph="people"></span> &nbsp;'
-                'Test Group', output.get_data(as_text=True))
-            self.assertEqual(output.get_data(as_text=True).count('<a href="/user/'), 1)
+                '<h3 class="mb-0 font-weight-bold">Test Group</h3>',
+                output.get_data(as_text=True))
+            self.assertEqual(
+                output.get_data(as_text=True).count('<a href="/user/'), 2)
 
             output = self.app.post(
                 '/group/test_group/foo/delete', data=data, follow_redirects=True)
@@ -447,9 +453,10 @@ class PagureFlaskGroupstests(tests.Modeltests):
                 '</button>\n                      Could not find user '
                 'username', output.get_data(as_text=True))
             self.assertIn(
-                '<span class="oi" data-glyph="people"></span> &nbsp;'
-                'Test Group', output.get_data(as_text=True))
-            self.assertEqual(output.get_data(as_text=True).count('<a href="/user/'), 1)
+                '<h3 class="mb-0 font-weight-bold">Test Group</h3>',
+                output.get_data(as_text=True))
+            self.assertEqual(
+                output.get_data(as_text=True).count('<a href="/user/'), 2)
 
         user.username = 'pingou'
         with tests.user_set(self.app.application, user):
@@ -461,9 +468,10 @@ class PagureFlaskGroupstests(tests.Modeltests):
                 '</button>\n                      User `foo` could not be '
                 'found in the group `test_group`', output.get_data(as_text=True))
             self.assertIn(
-                '<span class="oi" data-glyph="people"></span> &nbsp;'
-                'Test Group', output.get_data(as_text=True))
-            self.assertEqual(output.get_data(as_text=True).count('<a href="/user/'), 1)
+                '<h3 class="mb-0 font-weight-bold">Test Group</h3>',
+                output.get_data(as_text=True))
+            self.assertEqual(
+                output.get_data(as_text=True).count('<a href="/user/'), 2)
 
             # Cannot delete creator
             output = self.app.post(
@@ -473,9 +481,10 @@ class PagureFlaskGroupstests(tests.Modeltests):
                 '</button>\n                      User `foo` could not be '
                 'found in the group `test_group`', output.get_data(as_text=True))
             self.assertIn(
-                '<span class="oi" data-glyph="people"></span> &nbsp;'
-                'Test Group', output.get_data(as_text=True))
-            self.assertEqual(output.get_data(as_text=True).count('<a href="/user/'), 1)
+                '<h3 class="mb-0 font-weight-bold">Test Group</h3>',
+                output.get_data(as_text=True))
+            self.assertEqual(
+                output.get_data(as_text=True).count('<a href="/user/'), 2)
 
             # Add user foo
             data = {
@@ -488,9 +497,10 @@ class PagureFlaskGroupstests(tests.Modeltests):
                 '</button>\n                      User `foo` added to the '
                 'group `test_group`.', output.get_data(as_text=True))
             self.assertIn(
-                '<span class="oi" data-glyph="people"></span> &nbsp;'
-                'Test Group', output.get_data(as_text=True))
-            self.assertEqual(output.get_data(as_text=True).count('<a href="/user/'), 2)
+                '<h3 class="mb-0 font-weight-bold">Test Group</h3>',
+                output.get_data(as_text=True))
+            self.assertEqual(
+                output.get_data(as_text=True).count('<a href="/user/'), 3)
 
             output = self.app.post(
                 '/group/test_group/foo/delete', data=data, follow_redirects=True)
@@ -499,9 +509,10 @@ class PagureFlaskGroupstests(tests.Modeltests):
                 '</button>\n                      User `foo` removed from '
                 'the group `test_group`', output.get_data(as_text=True))
             self.assertIn(
-                '<span class="oi" data-glyph="people"></span> &nbsp;'
-                'Test Group', output.get_data(as_text=True))
-            self.assertEqual(output.get_data(as_text=True).count('<a href="/user/'), 1)
+                '<h3 class="mb-0 font-weight-bold">Test Group</h3>',
+                output.get_data(as_text=True))
+            self.assertEqual(
+                output.get_data(as_text=True).count('<a href="/user/'), 2)
 
 
 if __name__ == '__main__':