Coverage for clusterpackagetype / test_models.py: 100%

30 statements  

« prev     ^ index     » next       coverage.py v7.13.5, created at 2026-03-24 12:43 +0000

1from django.test import TransactionTestCase as TestCase 

2from django.urls import reverse 

3 

4from .models import Model 

5 

6from . import app_label 

7 

8from sm.utils import random_string 

9 

10import os 

11import django 

12 

13os.environ["DJANGO_SETTINGS_MODULE"] = "sm.settings" 

14django.setup() 

15 

16 

17class Tester(TestCase): 

18 model = Model 

19 teststring = random_string() 

20 fixtures = [] 

21 

22 testitem = None 

23 

24 def setUp(self): 

25 self.testitem, created = self.get_or_create_testitem() 

26 

27 def get_or_create_testitem(self): 

28 self.testitem, created = self.model.objects.get_or_create( 

29 name=self.teststring, 

30 ) 

31 return (self.testitem, created) 

32 

33 def test_create(self): 

34 # Since we want to test if creation works, we 

35 # need to manually prune the DB and create a testitem 

36 self.model.objects.all().delete() 

37 obj, created = self.get_or_create_testitem() 

38 self.assertEqual(created, True, "the object was already there?") 

39 self.assertIsInstance(obj, self.model, "object not correct model!?") 

40 

41 def test_name(self): 

42 self.assertEqual(self.testitem.name, self.teststring, "name not correct") 

43 

44 def test___str__(self): 

45 self.assertEqual( 

46 "%s" % self.testitem.name, 

47 "%s" % self.teststring, 

48 "string representation not correct", 

49 ) 

50 

51 def test_absolute_url(self): 

52 self.assertEqual( 

53 "%s" % (self.testitem.get_absolute_url()), 

54 "%s" % (reverse("%s:detail" % app_label, kwargs={"pk": self.testitem.pk})), 

55 "absolute url not built correctly", 

56 )