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
This commit is contained in:
jelle van der Waa 2018-01-04 22:23:06 +01:00 committed by Angel Velásquez
parent e4ab95c56a
commit 1e65142aea
2 changed files with 99 additions and 0 deletions

View File

@ -26,6 +26,11 @@ def testGetAbsoluteUrl(self):
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 @@ def test_json_endpoint(self):
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)

View File

@ -177,6 +177,62 @@ def test_packages_suggest(self):
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: