12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- from django.test import TestCase
- from django.core.exceptions import ValidationError
- from ..models import Service, Cost, CostUse
- class AbstractUseTests(TestCase):
- """ Testing AbstractUseTests through CostUse
- """
- def setUp(self):
- self.hosting_service = Service.objects.create(
- name='Physical hosting')
- self.mailbox_service = Service.objects.create(
- name='Mailbox')
- self.datacenter_cost = Cost.objects.create(
- name='Datacenter', price=100)
- def test_can_add_service_share(self):
- use = CostUse(
- service=self.hosting_service,
- resource=self.datacenter_cost,
- share=0.4)
- use.full_clean()
- use.save()
- def test_cannot_add_excess_share_one(self):
- use = CostUse(
- service=self.hosting_service,
- resource=self.datacenter_cost,
- share=1.1)
- with self.assertRaises(ValidationError):
- use.full_clean()
- use.save()
- def test_add_several_service_share(self):
- u1 = CostUse(
- service=self.hosting_service,
- resource=self.datacenter_cost,
- share=0.4)
- u1.full_clean()
- u1.save()
- u2 = CostUse(
- service=self.mailbox_service,
- resource=self.datacenter_cost,
- share=0.6)
- u2.full_clean()
- u2.save()
- def test_add_several_service_share_excessive_sum(self):
- u1 = CostUse(
- service=self.hosting_service,
- resource=self.datacenter_cost,
- share=0.5)
- u1.full_clean()
- u1.save()
- u2 = CostUse(
- service=self.mailbox_service,
- resource=self.datacenter_cost,
- share=0.6)
- with self.assertRaises(ValidationError):
- u2.full_clean()
- u2.save()
- def test_modify_service_share_no_error(self):
- u1 = CostUse(
- service=self.hosting_service,
- resource=self.datacenter_cost,
- share=1)
- u1.full_clean()
- u1.save()
- u1.full_clean()
- u1.save()
|