from datetime import datetime from django.test import TestCase from django.utils import timezone from .models import Category, Gauge, Mesure class TestCategoryModel(TestCase): def test_str(self): cat = Category(name='test') self.assertEqual('test', str(cat)) class TestGaugeModel(TestCase): def test_str(self): cat = Category.objects.create(name='eau') gauge = Gauge.objects.create(serial_number='test', category=cat) self.assertEqual('eau (test)', str(gauge)) def test_default_ordering(self): cat_water = Category.objects.create(name='eau') cat_gaz = Category.objects.create(name='gaz') gauge_1 = Gauge.objects.create(serial_number='undefined', category=cat_water) gauge_2 = Gauge.objects.create(serial_number='undefined', category=cat_gaz) gauge_3 = Gauge.objects.create(serial_number='undefined', category=cat_gaz) gauge_4 = Gauge.objects.create(serial_number='undefined', category=cat_water) gauges_list = Gauge.objects.all() self.assertEqual(gauge_1, gauges_list[0]) self.assertEqual(gauge_4, gauges_list[1]) self.assertEqual(gauge_2, gauges_list[2]) self.assertEqual(gauge_3, gauges_list[3]) def test_category_property(self): cat = Category.objects.create(name='eau') gauge = Gauge.objects.create(serial_number='undefined', category=cat) mesure = Mesure.objects.create(moment=timezone.make_aware(datetime.now()), value=0.001, gauge=gauge) self.assertEqual(cat, mesure.category)