mirror of
https://github.com/netbox-community/netbox.git
synced 2024-05-10 07:54:54 +00:00
#9623: Add slug field to SavedFilter
This commit is contained in:
@@ -192,11 +192,12 @@ class CustomLinkTest(APIViewTestCases.APIViewTestCase):
|
||||
|
||||
class SavedFilterTest(APIViewTestCases.APIViewTestCase):
|
||||
model = SavedFilter
|
||||
brief_fields = ['display', 'id', 'name', 'url']
|
||||
brief_fields = ['display', 'id', 'name', 'slug', 'url']
|
||||
create_data = [
|
||||
{
|
||||
'content_types': ['dcim.site'],
|
||||
'name': 'Saved Filter 4',
|
||||
'slug': 'saved-filter-4',
|
||||
'weight': 100,
|
||||
'enabled': True,
|
||||
'shared': True,
|
||||
@@ -205,6 +206,7 @@ class SavedFilterTest(APIViewTestCases.APIViewTestCase):
|
||||
{
|
||||
'content_types': ['dcim.site'],
|
||||
'name': 'Saved Filter 5',
|
||||
'slug': 'saved-filter-5',
|
||||
'weight': 200,
|
||||
'enabled': True,
|
||||
'shared': True,
|
||||
@@ -213,6 +215,7 @@ class SavedFilterTest(APIViewTestCases.APIViewTestCase):
|
||||
{
|
||||
'content_types': ['dcim.site'],
|
||||
'name': 'Saved Filter 6',
|
||||
'slug': 'saved-filter-6',
|
||||
'weight': 300,
|
||||
'enabled': True,
|
||||
'shared': True,
|
||||
@@ -232,6 +235,7 @@ class SavedFilterTest(APIViewTestCases.APIViewTestCase):
|
||||
saved_filters = (
|
||||
SavedFilter(
|
||||
name='Saved Filter 1',
|
||||
slug='saved-filter-1',
|
||||
weight=100,
|
||||
enabled=True,
|
||||
shared=True,
|
||||
@@ -239,6 +243,7 @@ class SavedFilterTest(APIViewTestCases.APIViewTestCase):
|
||||
),
|
||||
SavedFilter(
|
||||
name='Saved Filter 2',
|
||||
slug='saved-filter-2',
|
||||
weight=200,
|
||||
enabled=True,
|
||||
shared=True,
|
||||
@@ -246,6 +251,7 @@ class SavedFilterTest(APIViewTestCases.APIViewTestCase):
|
||||
),
|
||||
SavedFilter(
|
||||
name='Saved Filter 3',
|
||||
slug='saved-filter-3',
|
||||
weight=300,
|
||||
enabled=True,
|
||||
shared=True,
|
||||
|
@@ -240,6 +240,7 @@ class SavedFilterTestCase(TestCase, BaseFilterSetTests):
|
||||
saved_filters = (
|
||||
SavedFilter(
|
||||
name='Saved Filter 1',
|
||||
slug='saved-filter-1',
|
||||
user=users[0],
|
||||
weight=100,
|
||||
enabled=True,
|
||||
@@ -248,6 +249,7 @@ class SavedFilterTestCase(TestCase, BaseFilterSetTests):
|
||||
),
|
||||
SavedFilter(
|
||||
name='Saved Filter 2',
|
||||
slug='saved-filter-2',
|
||||
user=users[1],
|
||||
weight=200,
|
||||
enabled=True,
|
||||
@@ -256,6 +258,7 @@ class SavedFilterTestCase(TestCase, BaseFilterSetTests):
|
||||
),
|
||||
SavedFilter(
|
||||
name='Saved Filter 3',
|
||||
slug='saved-filter-3',
|
||||
user=users[2],
|
||||
weight=300,
|
||||
enabled=False,
|
||||
@@ -271,6 +274,10 @@ class SavedFilterTestCase(TestCase, BaseFilterSetTests):
|
||||
params = {'name': ['Saved Filter 1', 'Saved Filter 2']}
|
||||
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2)
|
||||
|
||||
def test_slug(self):
|
||||
params = {'slug': ['saved-filter-1', 'saved-filter-2']}
|
||||
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2)
|
||||
|
||||
def test_content_types(self):
|
||||
params = {'content_types': 'dcim.site'}
|
||||
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 1)
|
||||
|
@@ -122,9 +122,27 @@ class SavedFilterTestCase(ViewTestCases.PrimaryObjectViewTestCase):
|
||||
User.objects.bulk_create(users)
|
||||
|
||||
saved_filters = (
|
||||
SavedFilter(name='Saved Filter 1', user=users[0], weight=100, parameters={'status': ['active']}),
|
||||
SavedFilter(name='Saved Filter 2', user=users[1], weight=200, parameters={'status': ['planned']}),
|
||||
SavedFilter(name='Saved Filter 3', user=users[2], weight=300, parameters={'status': ['retired']}),
|
||||
SavedFilter(
|
||||
name='Saved Filter 1',
|
||||
slug='saved-filter-1',
|
||||
user=users[0],
|
||||
weight=100,
|
||||
parameters={'status': ['active']}
|
||||
),
|
||||
SavedFilter(
|
||||
name='Saved Filter 2',
|
||||
slug='saved-filter-2',
|
||||
user=users[1],
|
||||
weight=200,
|
||||
parameters={'status': ['planned']}
|
||||
),
|
||||
SavedFilter(
|
||||
name='Saved Filter 3',
|
||||
slug='saved-filter-3',
|
||||
user=users[2],
|
||||
weight=300,
|
||||
parameters={'status': ['retired']}
|
||||
),
|
||||
)
|
||||
SavedFilter.objects.bulk_create(saved_filters)
|
||||
for i, savedfilter in enumerate(saved_filters):
|
||||
@@ -132,6 +150,7 @@ class SavedFilterTestCase(ViewTestCases.PrimaryObjectViewTestCase):
|
||||
|
||||
cls.form_data = {
|
||||
'name': 'Saved Filter X',
|
||||
'slug': 'saved-filter-x',
|
||||
'content_types': [site_ct.pk],
|
||||
'description': 'Foo',
|
||||
'weight': 1000,
|
||||
@@ -141,10 +160,10 @@ class SavedFilterTestCase(ViewTestCases.PrimaryObjectViewTestCase):
|
||||
}
|
||||
|
||||
cls.csv_data = (
|
||||
'name,content_types,weight,enabled,shared,parameters',
|
||||
'Saved Filter 4,dcim.device,400,True,True,{"foo": "a"}',
|
||||
'Saved Filter 5,dcim.device,500,True,True,{"foo": "b"}',
|
||||
'Saved Filter 6,dcim.device,600,True,True,{"foo": "c"}',
|
||||
'name,slug,content_types,weight,enabled,shared,parameters',
|
||||
'Saved Filter 4,saved-filter-4,dcim.device,400,True,True,{"foo": "a"}',
|
||||
'Saved Filter 5,saved-filter-5,dcim.device,500,True,True,{"foo": "b"}',
|
||||
'Saved Filter 6,saved-filter-6,dcim.device,600,True,True,{"foo": "c"}',
|
||||
)
|
||||
|
||||
cls.csv_update_data = (
|
||||
|
Reference in New Issue
Block a user