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
« 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
4from .models import Model
6from . import app_label
8from sm.utils import random_string
10import os
11import django
13os.environ["DJANGO_SETTINGS_MODULE"] = "sm.settings"
14django.setup()
17class Tester(TestCase):
18 model = Model
19 teststring = random_string()
20 fixtures = []
22 testitem = None
24 def setUp(self):
25 self.testitem, created = self.get_or_create_testitem()
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)
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!?")
41 def test_name(self):
42 self.assertEqual(self.testitem.name, self.teststring, "name not correct")
44 def test___str__(self):
45 self.assertEqual(
46 "%s" % self.testitem.name,
47 "%s" % self.teststring,
48 "string representation not correct",
49 )
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 )