diff options
author | jelle van der Waa <jelle@vdwaa.nl> | 2018-01-04 22:23:06 +0100 |
---|---|---|
committer | Angel Velásquez <angvp@archlinux.org> | 2018-01-04 16:23:06 -0500 |
commit | 1e65142aeab9e24b8968f3915ef930386f04fed3 (patch) | |
tree | b0f7e381f51317085284fcdb44126d4195ceaf8c | |
parent | e4ab95c56a541139703dcf7a6bce86098a9d5ef4 (diff) | |
download | archweb-1e65142aeab9e24b8968f3915ef930386f04fed3.tar.gz archweb-1e65142aeab9e24b8968f3915ef930386f04fed3.zip |
Add more basic url tests (#76)
* packages: Add test for differences view
Add a simple test to check if the differences view renders.
* packages: Add tests for more urls
Add basic tests for /packages/ related urls.
* mirrors: Add mirrorlist urls
-rw-r--r-- | mirrors/tests.py | 43 | ||||
-rw-r--r-- | packages/tests.py | 56 |
2 files changed, 99 insertions, 0 deletions
diff --git a/mirrors/tests.py b/mirrors/tests.py index 1261cf59..318811ef 100644 --- a/mirrors/tests.py +++ b/mirrors/tests.py @@ -26,6 +26,11 @@ class MirrorUrlTest(TestCase): expected = '/mirrors/%s/%d/' % (self.mirror_url.mirror.name, self.mirror_url.pk) self.assertEqual(absolute_url, expected) + def test_mirror_overview(self): + response = self.client.get('/mirrors/') + self.assertEqual(response.status_code, 200) + self.assertIn(self.mirror_url.mirror.name, response.content) + def testClean(self): # TODO: add test for self.mirror_url.clean() pass @@ -60,3 +65,41 @@ class MirrorStatusTest(TestCase): self.assertEqual(len(data['urls']), 1) mirror = data['urls'][0] self.assertEqual(mirror['url'], mirror_url.url) + + +class MirrorListTest(TestCase): + def setUp(self): + self.mirror_url = create_mirror_url() + + def test_mirrorlist(self): + response = self.client.get('/mirrorlist/') + self.assertEqual(response.status_code, 200) + + def test_mirrorlist(self): + response = self.client.get('/mirrorlist/') + self.assertEqual(response.status_code, 200) + + def test_mirrorlist_all(self): + response = self.client.get('/mirrorlist/all/') + self.assertEqual(response.status_code, 200) + self.assertIn(self.mirror_url.hostname, response.content) + + def test_mirrorlist_all_http(self): + response = self.client.get('/mirrorlist/all/http/') + self.assertEqual(response.status_code, 200) + self.assertIn(self.mirror_url.hostname, response.content) + + def test_mirrorlist_all_https(self): + response = self.client.get('/mirrorlist/all/https/') + self.assertEqual(response.status_code, 404) + # TODO: test 200 case + + def test_mirrorlist_filter(self): + response = self.client.get('/mirrorlist/?country=all&protocol=http&ip_version=4') + self.assertEqual(response.status_code, 200) + self.assertIn(self.mirror_url.hostname, response.content) + + def test_generate(self): + response = self.client.get('/mirrorlist/?country=all&protocol=http&ip_version=4') + self.assertEqual(response.status_code, 200) + self.assertIn(self.mirror_url.hostname, response.content) diff --git a/packages/tests.py b/packages/tests.py index 69ec3217..94d7c20d 100644 --- a/packages/tests.py +++ b/packages/tests.py @@ -177,6 +177,62 @@ class OpenSearch(TestCase): self.assertIn('linux', response.content) response = self.client.get('/opensearch/packages/suggest') + +class PackageViews(TestCase): + fixtures = ['main/fixtures/arches.json', 'main/fixtures/repos.json', + 'main/fixtures/package.json'] + + def test_arch_differences(self): + response = self.client.get('/packages/differences/') self.assertEqual(response.status_code, 200) + +class PackageDisplay(TestCase): + fixtures = ['main/fixtures/arches.json', 'main/fixtures/repos.json', + 'main/fixtures/package.json'] + + def test_packages_detail(self): + response = self.client.get('/packages/core/x86_64/linux/') + self.assertEqual(response.status_code, 200) + + response = self.client.get('/packages/core/x86_64/nope/') + self.assertEqual(response.status_code, 404) + + # Redirect to search + response = self.client.get('/packages/core/x86_64/') + self.assertEqual(response.status_code, 302) + + def test_packages_json(self): + response = self.client.get('/packages/core/x86_64/linux/json/') + self.assertEqual(response.status_code, 200) + data = json.loads(response.content) + self.assertEqual(data['pkgbase'], 'linux') + # TODO verify more of the structure + + def test_packages_files(self): + response = self.client.get('/packages/core/x86_64/linux/files/') + self.assertEqual(response.status_code, 200) + + def test_packages_files_json(self): + response = self.client.get('/packages/core/x86_64/linux/files/json/') + self.assertEqual(response.status_code, 200) + data = json.loads(response.content) + self.assertEqual(data['pkgname'], 'linux') + # TODO verify more of the structure + + def test_packages_download(self): + response = self.client.get('/packages/core/x86_64/linux/download/') + self.assertEqual(response.status_code, 404) + # TODO: Figure out how to fake a mirror + + def test_groups(self): + response = self.client.get('/groups/') + self.assertEqual(response.status_code, 200) + + def test_groups_detail(self): + response = self.client.get('/groups/x86_64/base/') + self.assertEqual(response.status_code, 404) + # FIXME: add group fixtures. + + # vim: set ts=4 sw=4 et: |