1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00

Extend assertInstanceEqual to accept a list of data fields to exclude from comparison with the instance

This commit is contained in:
Jeremy Stretch
2020-11-25 11:44:44 -05:00
parent d250fd91a9
commit f8b523b97b
2 changed files with 22 additions and 8 deletions

View File

@ -174,6 +174,7 @@ class APIViewTestCases:
class CreateObjectViewTestCase(APITestCase):
create_data = []
validation_excluded_fields = []
def test_create_object_without_permission(self):
"""
@ -205,6 +206,7 @@ class APIViewTestCases:
self.assertInstanceEqual(
self._get_queryset().get(pk=response.data['id']),
self.create_data[0],
exclude=self.validation_excluded_fields,
api=True
)
@ -229,11 +231,13 @@ class APIViewTestCases:
self.assertInstanceEqual(
self._get_queryset().get(pk=obj['id']),
self.create_data[i],
exclude=self.validation_excluded_fields,
api=True
)
class UpdateObjectViewTestCase(APITestCase):
update_data = {}
validation_excluded_fields = []
def test_update_object_without_permission(self):
"""
@ -266,7 +270,12 @@ class APIViewTestCases:
response = self.client.patch(url, update_data, format='json', **self.header)
self.assertHttpStatus(response, status.HTTP_200_OK)
instance.refresh_from_db()
self.assertInstanceEqual(instance, update_data, api=True)
self.assertInstanceEqual(
instance,
update_data,
exclude=self.validation_excluded_fields,
api=True
)
class DeleteObjectViewTestCase(APITestCase):