Source code for oioioi.status.tests
from django.urls import reverse
from oioioi.base.tests import TestCase
from oioioi.contests.models import Contest
from oioioi.status.registry import status_registry
[docs]def _coding_status(request, response):
response['coding_status'] = 'testing an app'
return response
[docs]class TestContestStatus(TestCase):
[docs] def test_generating_status(self):
contest = Contest.objects.get()
url = reverse('get_status', kwargs={'contest_id': contest.id})
self.assertTrue(self.client.login(username='test_user'))
response = self.client.get(url)
self.assertContains(response, url)
self.assertContains(response, contest.id)
self.assertContains(response, 'test_user')
self.assertContains(response, 'testing an app')
data = response.json()
self.assertEqual(data['is_superuser'], False)
self.assertTrue(self.client.login(username='test_admin'))
response = self.client.get(url)
self.assertContains(response, 'test_admin')
self.assertContains(response, 'testing an app')
data = response.json()
self.assertEqual(data['is_superuser'], True)
[docs] def test_initial(self):
contest = Contest.objects.get()
url = reverse('contest_dashboard', kwargs={'contest_id': contest.id})
self.assertTrue(self.client.login(username='test_user'))
response = self.client.get(url)
self.assertContains(response, url)
self.assertContains(response, contest.id)
self.assertContains(response, 'test_user')
self.assertContains(response, 'testing an app')
self.assertContains(response, 'initialStatus')
[docs]class TestNoContestStatus(TestCase):
[docs] def test_generating_status(self):
url = reverse('get_status')
self.assertTrue(self.client.login(username='test_user'))
response = self.client.get(url)
self.assertContains(response, url)
self.assertNotContains(response, 'contest_id')
self.assertContains(response, 'test_user')
self.assertContains(response, 'testing an app')