Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
fun-apps / tests / test_views.py
Size: Mime:
from django.test import TestCase

from universities.tests.factories import UniversityFactory
from universities import models
from universities import views


class UniversityQuerysetsTests(TestCase):

    def test_landing_view(self):
        u1 = UniversityFactory.create(detail_page_enabled=True, is_obsolete=False)
        u2 = UniversityFactory.create(detail_page_enabled=False, is_obsolete=False)
        u3 = UniversityFactory.create(detail_page_enabled=False, is_obsolete=True)
        u4 = UniversityFactory.create(detail_page_enabled=True, is_obsolete=True)

        listed_universities = list(views.UniversityLandingView().get_queryset())

        self.assertTrue(u1 in listed_universities)
        self.assertFalse(u2 in listed_universities)
        self.assertFalse(u3 in listed_universities)
        self.assertFalse(u4 in listed_universities)

    def test_featured(self):
        u1 = UniversityFactory.create(detail_page_enabled=True, is_obsolete=False, score=1)
        u2 = UniversityFactory.create(detail_page_enabled=False, is_obsolete=False, score=2)
        u3 = UniversityFactory.create(detail_page_enabled=False, is_obsolete=True, score=3)
        u4 = UniversityFactory.create(detail_page_enabled=True, is_obsolete=True, score=4)

        featured_universities = list(models.University.objects.featured(4))

        self.assertTrue(u1 in featured_universities)
        self.assertFalse(u2 in featured_universities)
        self.assertFalse(u3 in featured_universities)
        self.assertFalse(u4 in featured_universities)
        self.assertEqual(1, len(featured_universities))

    def test_not_obsolete(self):
        u1 = UniversityFactory.create(detail_page_enabled=True, is_obsolete=False)
        u2 = UniversityFactory.create(detail_page_enabled=True, is_obsolete=True)

        not_obsolete = models.University.objects.not_obsolete()
        self.assertIn(u1, not_obsolete)
        self.assertNotIn(u2, not_obsolete)