mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-22 03:56:53 -06:00
Add description filter for Token & ObjectPermission
This commit is contained in:
parent
c137fa2022
commit
5a60224d77
@ -97,7 +97,7 @@ class TokenFilterSet(BaseFilterSet):
|
|||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Token
|
model = Token
|
||||||
fields = ['id', 'key', 'write_enabled']
|
fields = ['id', 'key', 'write_enabled', 'description']
|
||||||
|
|
||||||
def search(self, queryset, name, value):
|
def search(self, queryset, name, value):
|
||||||
if not value.strip():
|
if not value.strip():
|
||||||
@ -138,7 +138,7 @@ class ObjectPermissionFilterSet(BaseFilterSet):
|
|||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = ObjectPermission
|
model = ObjectPermission
|
||||||
fields = ['id', 'name', 'enabled', 'object_types']
|
fields = ['id', 'name', 'enabled', 'object_types', 'description']
|
||||||
|
|
||||||
def search(self, queryset, name, value):
|
def search(self, queryset, name, value):
|
||||||
if not value.strip():
|
if not value.strip():
|
||||||
|
@ -142,8 +142,8 @@ class ObjectPermissionTestCase(TestCase, BaseFilterSetTests):
|
|||||||
)
|
)
|
||||||
|
|
||||||
permissions = (
|
permissions = (
|
||||||
ObjectPermission(name='Permission 1', actions=['view', 'add', 'change', 'delete']),
|
ObjectPermission(name='Permission 1', actions=['view', 'add', 'change', 'delete'], description='foobar1'),
|
||||||
ObjectPermission(name='Permission 2', actions=['view', 'add', 'change', 'delete']),
|
ObjectPermission(name='Permission 2', actions=['view', 'add', 'change', 'delete'], description='foobar2'),
|
||||||
ObjectPermission(name='Permission 3', actions=['view', 'add', 'change', 'delete']),
|
ObjectPermission(name='Permission 3', actions=['view', 'add', 'change', 'delete']),
|
||||||
ObjectPermission(name='Permission 4', actions=['view'], enabled=False),
|
ObjectPermission(name='Permission 4', actions=['view'], enabled=False),
|
||||||
ObjectPermission(name='Permission 5', actions=['add'], enabled=False),
|
ObjectPermission(name='Permission 5', actions=['add'], enabled=False),
|
||||||
@ -183,6 +183,10 @@ class ObjectPermissionTestCase(TestCase, BaseFilterSetTests):
|
|||||||
params = {'object_types': [object_types[0].pk, object_types[1].pk]}
|
params = {'object_types': [object_types[0].pk, object_types[1].pk]}
|
||||||
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2)
|
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2)
|
||||||
|
|
||||||
|
def test_description(self):
|
||||||
|
params = {'description': ['foobar1', 'foobar2']}
|
||||||
|
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2)
|
||||||
|
|
||||||
|
|
||||||
class TokenTestCase(TestCase, BaseFilterSetTests):
|
class TokenTestCase(TestCase, BaseFilterSetTests):
|
||||||
queryset = Token.objects.all()
|
queryset = Token.objects.all()
|
||||||
@ -201,8 +205,8 @@ class TokenTestCase(TestCase, BaseFilterSetTests):
|
|||||||
future_date = make_aware(datetime.datetime(3000, 1, 1))
|
future_date = make_aware(datetime.datetime(3000, 1, 1))
|
||||||
past_date = make_aware(datetime.datetime(2000, 1, 1))
|
past_date = make_aware(datetime.datetime(2000, 1, 1))
|
||||||
tokens = (
|
tokens = (
|
||||||
Token(user=users[0], key=Token.generate_key(), expires=future_date, write_enabled=True),
|
Token(user=users[0], key=Token.generate_key(), expires=future_date, write_enabled=True, description='foobar1'),
|
||||||
Token(user=users[1], key=Token.generate_key(), expires=future_date, write_enabled=True),
|
Token(user=users[1], key=Token.generate_key(), expires=future_date, write_enabled=True, description='foobar2'),
|
||||||
Token(user=users[2], key=Token.generate_key(), expires=past_date, write_enabled=False),
|
Token(user=users[2], key=Token.generate_key(), expires=past_date, write_enabled=False),
|
||||||
)
|
)
|
||||||
Token.objects.bulk_create(tokens)
|
Token.objects.bulk_create(tokens)
|
||||||
@ -232,3 +236,7 @@ class TokenTestCase(TestCase, BaseFilterSetTests):
|
|||||||
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2)
|
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2)
|
||||||
params = {'write_enabled': False}
|
params = {'write_enabled': False}
|
||||||
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 1)
|
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 1)
|
||||||
|
|
||||||
|
def test_description(self):
|
||||||
|
params = {'description': ['foobar1', 'foobar2']}
|
||||||
|
self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2)
|
||||||
|
Loading…
Reference in New Issue
Block a user