diff options
author | Jelle van der Waa <jelle@vdwaa.nl> | 2019-02-09 21:00:11 +0100 |
---|---|---|
committer | Jelle van der Waa <jelle@vdwaa.nl> | 2019-02-09 21:00:11 +0100 |
commit | d41c57a09fdc57b7fe8945923f108c7622d87fe4 (patch) | |
tree | 275d61ea5f64619e5d5aae2b740a865e9f22ca52 /packages | |
parent | 1b80f06f6dc4d66047dea2ade1f575710bd15177 (diff) | |
download | archweb-d41c57a09fdc57b7fe8945923f108c7622d87fe4.tar.gz archweb-d41c57a09fdc57b7fe8945923f108c7622d87fe4.zip |
packages: add tests for unflagging
Diffstat (limited to 'packages')
-rw-r--r-- | packages/tests.py | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/packages/tests.py b/packages/tests.py index 4a9006a7..563d78e2 100644 --- a/packages/tests.py +++ b/packages/tests.py @@ -296,6 +296,60 @@ class FlagPackage(TestCase): self.assertEqual(len(mail.outbox), 0) +class UnFlagPackage(TransactionTestCase): + fixtures = ['main/fixtures/arches.json', 'main/fixtures/repos.json', + 'main/fixtures/package.json'] + + def setUp(self): + password = 'test' + self.user = User.objects.create_superuser('admin', + 'admin@archlinux.org', + password) + self.profile = UserProfile.objects.create(user=self.user, + public_email="{}@awesome.com".format(self.user.username)) + self.profile.allowed_repos.add(Repo.objects.get(name='Core')) + self.profile.save() + self.client.post('/login/', { + 'username': self.user.username, + 'password': password + }) + + def tearDown(self): + self.profile.delete() + self.user.delete() + PackageRelation.objects.all().delete() + + def flag_package(self): + data = { + 'website': '', + 'email': 'nobody@archlinux.org', + 'message': 'new linux version', + } + response = self.client.post('/packages/core/x86_64/linux/flag/', + data, + follow=True) + self.assertEqual(response.status_code, 200) + + def test_unflag_package_404(self): + response = self.client.get('/packages/core/x86_64/fooobar/unflag/') + self.assertEqual(response.status_code, 404) + + response = self.client.get('/packages/core/x86_64/fooobar/unflag/all/') + self.assertEqual(response.status_code, 404) + + def test_unflag_package(self): + self.flag_package() + response = self.client.get('/packages/core/x86_64/linux/unflag/', follow=True) + self.assertEqual(response.status_code, 200) + self.assertIn('Flag linux as out-of-date', response.content.decode()) + + def test_unflag_all_package(self): + self.flag_package() + response = self.client.get('/packages/core/x86_64/linux/unflag/all/', follow=True) + self.assertEqual(response.status_code, 200) + self.assertIn('Flag linux as out-of-date', response.content.decode()) + + class AdoptOrphanPackage(TransactionTestCase): fixtures = ['main/fixtures/arches.json', 'main/fixtures/repos.json', 'main/fixtures/package.json'] |