|
|
|
@ -0,0 +1,64 @@ |
|
|
|
from abc import ABCMeta |
|
|
|
|
|
|
|
from django.conf import settings |
|
|
|
from django.shortcuts import resolve_url |
|
|
|
from django.test import TestCase |
|
|
|
|
|
|
|
from accounts_app.models import UserProfile |
|
|
|
from group_app.models import Group |
|
|
|
from tariff_app.models import Tariff |
|
|
|
|
|
|
|
|
|
|
|
class MyBaseTestCase(metaclass=ABCMeta): |
|
|
|
def _client_get_check_login(self, url): |
|
|
|
""" |
|
|
|
Checks if url is protected from unauthorized access |
|
|
|
:param url: |
|
|
|
:return: authorized response |
|
|
|
""" |
|
|
|
r = self.client.get(url) |
|
|
|
self.assertRedirects(r, "%s?next=%s" % (getattr(settings, 'LOGIN_URL'), url)) |
|
|
|
self.client.force_login(self.adminuser) |
|
|
|
r = self.client.get(url) |
|
|
|
self.assertEqual(r.status_code, 200) |
|
|
|
return r |
|
|
|
|
|
|
|
def setUp(self): |
|
|
|
grp = Group.objects.create(title='Grp1') |
|
|
|
my_admin = UserProfile.objects.create_superuser('+79781234567', 'local_superuser', 'ps') |
|
|
|
self.adminuser = my_admin |
|
|
|
self.group = grp |
|
|
|
|
|
|
|
|
|
|
|
class ServiceTestCase(MyBaseTestCase, TestCase): |
|
|
|
def setUp(self): |
|
|
|
super(ServiceTestCase, self).setUp() |
|
|
|
trf = Tariff.objects.create( |
|
|
|
title='test', |
|
|
|
descr='Some descr', |
|
|
|
speedIn=10.0, |
|
|
|
speedOut=2.0, |
|
|
|
amount=1.0, |
|
|
|
calc_type='Df' |
|
|
|
) |
|
|
|
trf.groups.add(self.group.pk) |
|
|
|
trf.save() |
|
|
|
self.tariff = trf |
|
|
|
|
|
|
|
def test_add_same_services(self): |
|
|
|
print('test_add_same_services') |
|
|
|
url = resolve_url('tariff_app:add') |
|
|
|
self._client_get_check_login(url) |
|
|
|
self.client.post(url, data={ |
|
|
|
'title': 'same srv', |
|
|
|
'descr': 'descriptive', |
|
|
|
'speedIn': 10.0, |
|
|
|
'speedOut': 2.0, |
|
|
|
'amount': 1.0, |
|
|
|
'calc_type': 'Df' |
|
|
|
}) |
|
|
|
try: |
|
|
|
Tariff.objects.get(title='same srv') |
|
|
|
raise self.failureException('Services cannot be saved because it duplicates other service') |
|
|
|
except Tariff.DoesNotExist: |
|
|
|
pass |