12 changed files with 111 additions and 81 deletions
-
7abonapp/forms.py
-
6abonapp/models.py
-
7abonapp/pay_systems.py
-
46abonapp/tests.py
-
10abonapp/views.py
-
9accounts_app/models.py
-
2agent/downloader.py
-
68devapp/tests.py
-
2devapp/urls.py
-
5devapp/views.py
-
15djing/global_base_views.py
-
9djing/lib/decorators.py
@ -1,22 +1,54 @@ |
|||
from django.test import TestCase |
|||
from . import dev_types |
|||
from hashlib import sha256 |
|||
from django.shortcuts import resolve_url |
|||
from django.test import TestCase, RequestFactory, override_settings |
|||
|
|||
from accounts_app.models import UserProfile |
|||
from devapp.models import Device |
|||
from group_app.models import Group |
|||
|
|||
rf = RequestFactory() |
|||
API_SECRET = 'TestApiSecret' |
|||
|
|||
|
|||
def calc_hash(data): |
|||
if type(data) is str: |
|||
result_data = data.encode('utf-8') |
|||
else: |
|||
result_data = bytes(data) |
|||
return sha256(result_data).hexdigest() |
|||
|
|||
|
|||
class DevTest(TestCase): |
|||
def setUp(self): |
|||
pass |
|||
|
|||
def snmp(self): |
|||
dev = dev_types.DLinkDevice('10.115.1.105', '<community>', 2) |
|||
|
|||
print(('DevName:', dev.get_device_name())) |
|||
ports = dev.get_ports() |
|||
print('gports') |
|||
for port in ports: |
|||
if not issubclass(port.__class__, dev_types.BasePort): |
|||
raise TypeError |
|||
print(('\tPort:', port.nm, port.st, port.mac(), port.sp)) |
|||
# Disable 2 port |
|||
print((ports[1].disable())) |
|||
# Enable 2 port |
|||
print((ports[1].enable())) |
|||
grp = Group.objects.create(title='Grp1') |
|||
my_admin = UserProfile.objects.create_superuser('+79781234567', 'local_superuser', 'ps') |
|||
# self.client.login(username=my_admin.username, password=my_admin.password) |
|||
self.adminuser = my_admin |
|||
Device.objects.create( |
|||
ip_address='192.168.0.100', |
|||
mac_addr='78:81:f2:1f:d2:a9', |
|||
comment='Test device', |
|||
devtype='On', |
|||
man_passw='public', |
|||
group=grp |
|||
) |
|||
|
|||
@override_settings(API_AUTH_SECRET=API_SECRET, API_AUTH_SUBNET='127.0.0.1') |
|||
def test_secure_api_ok(self): |
|||
self.client.force_login(self.adminuser) |
|||
sign = calc_hash(API_SECRET) |
|||
url = resolve_url('devapp:nagios_get_all_hosts') |
|||
r = self.client.get(url, { |
|||
'sign': sign |
|||
}) |
|||
self.assertEqual(r.status_code, 200) |
|||
|
|||
@override_settings(API_AUTH_SECRET=API_SECRET, API_AUTH_SUBNET='127.0.0.1') |
|||
def test_get_config_nagios_file(self): |
|||
self.client.force_login(self.adminuser) |
|||
sign = calc_hash(API_SECRET) |
|||
url = resolve_url('devapp:nagios_objects_conf') |
|||
r = self.client.get(url, { |
|||
'sign': sign |
|||
}) |
|||
self.assertEqual(r.status_code, 200) |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue