mirror of
https://github.com/netbox-community/netbox.git
synced 2025-08-15 12:08:17 -06:00
Added view tests for extras
This commit is contained in:
parent
bb9017f484
commit
69c29f5d25
105
netbox/extras/tests/test_views.py
Normal file
105
netbox/extras/tests/test_views.py
Normal file
@ -0,0 +1,105 @@
|
|||||||
|
import urllib.parse
|
||||||
|
import uuid
|
||||||
|
|
||||||
|
from django.contrib.auth.models import User
|
||||||
|
from django.test import Client, TestCase
|
||||||
|
from django.urls import reverse
|
||||||
|
from taggit.models import Tag
|
||||||
|
|
||||||
|
from dcim.models import Site
|
||||||
|
from extras.models import ConfigContext, ObjectChange
|
||||||
|
|
||||||
|
|
||||||
|
class TagTestCase(TestCase):
|
||||||
|
|
||||||
|
def setUp(self):
|
||||||
|
|
||||||
|
self.client = Client()
|
||||||
|
|
||||||
|
Tag.objects.bulk_create([
|
||||||
|
Tag(name='Tag 1', slug='tag-1'),
|
||||||
|
Tag(name='Tag 2', slug='tag-2'),
|
||||||
|
Tag(name='Tag 3', slug='tag-3'),
|
||||||
|
])
|
||||||
|
|
||||||
|
def test_tag_list(self):
|
||||||
|
|
||||||
|
url = reverse('extras:tag_list')
|
||||||
|
params = {
|
||||||
|
"q": "tag",
|
||||||
|
}
|
||||||
|
|
||||||
|
response = self.client.get('{}?{}'.format(url, urllib.parse.urlencode(params)))
|
||||||
|
self.assertEqual(response.status_code, 200)
|
||||||
|
|
||||||
|
|
||||||
|
class ConfigContextTestCase(TestCase):
|
||||||
|
|
||||||
|
def setUp(self):
|
||||||
|
|
||||||
|
self.client = Client()
|
||||||
|
|
||||||
|
site = Site(name='Site 1', slug='site-1')
|
||||||
|
site.save()
|
||||||
|
|
||||||
|
# Create three ConfigContexts
|
||||||
|
for i in range(1, 4):
|
||||||
|
configcontext = ConfigContext(
|
||||||
|
name='Config Context {}'.format(i),
|
||||||
|
data='{{"foo": {}}}'.format(i)
|
||||||
|
)
|
||||||
|
configcontext.save()
|
||||||
|
configcontext.sites.add(site)
|
||||||
|
|
||||||
|
def test_configcontext_list(self):
|
||||||
|
|
||||||
|
url = reverse('extras:configcontext_list')
|
||||||
|
params = {
|
||||||
|
"q": "foo",
|
||||||
|
}
|
||||||
|
|
||||||
|
response = self.client.get('{}?{}'.format(url, urllib.parse.urlencode(params)))
|
||||||
|
self.assertEqual(response.status_code, 200)
|
||||||
|
|
||||||
|
def test_configcontext(self):
|
||||||
|
|
||||||
|
configcontext = ConfigContext.objects.first()
|
||||||
|
response = self.client.get(configcontext.get_absolute_url())
|
||||||
|
self.assertEqual(response.status_code, 200)
|
||||||
|
|
||||||
|
|
||||||
|
class ObjectChangeTestCase(TestCase):
|
||||||
|
|
||||||
|
def setUp(self):
|
||||||
|
|
||||||
|
self.client = Client()
|
||||||
|
|
||||||
|
user = User(username='testuser', email='testuser@example.com')
|
||||||
|
user.save()
|
||||||
|
|
||||||
|
site = Site(name='Site 1', slug='site-1')
|
||||||
|
site.save()
|
||||||
|
|
||||||
|
# Create three ObjectChanges
|
||||||
|
for i in range(1, 4):
|
||||||
|
site.log_change(
|
||||||
|
user=user,
|
||||||
|
request_id=uuid.uuid4(),
|
||||||
|
action=2
|
||||||
|
)
|
||||||
|
|
||||||
|
def test_objectchange_list(self):
|
||||||
|
|
||||||
|
url = reverse('extras:objectchange_list')
|
||||||
|
params = {
|
||||||
|
"user": User.objects.first(),
|
||||||
|
}
|
||||||
|
|
||||||
|
response = self.client.get('{}?{}'.format(url, urllib.parse.urlencode(params)))
|
||||||
|
self.assertEqual(response.status_code, 200)
|
||||||
|
|
||||||
|
def test_objectchange(self):
|
||||||
|
|
||||||
|
objectchange = ObjectChange.objects.first()
|
||||||
|
response = self.client.get(objectchange.get_absolute_url())
|
||||||
|
self.assertEqual(response.status_code, 200)
|
Loading…
Reference in New Issue
Block a user