mirror of
https://github.com/netbox-community/netbox.git
synced 2025-08-26 01:06:11 -06:00
12552 test fixes
This commit is contained in:
parent
a97df5dd62
commit
1c6954950d
@ -16,7 +16,7 @@ from users.models import ObjectPermission, Token
|
|||||||
from utilities.api import get_graphql_type_for_model
|
from utilities.api import get_graphql_type_for_model
|
||||||
from .base import ModelTestCase
|
from .base import ModelTestCase
|
||||||
from .utils import disable_warnings
|
from .utils import disable_warnings
|
||||||
|
from utilities.tree_queries import TreeQuerySet
|
||||||
from ipam.graphql.types import IPAddressFamilyType
|
from ipam.graphql.types import IPAddressFamilyType
|
||||||
|
|
||||||
|
|
||||||
@ -419,7 +419,7 @@ class APIViewTestCases:
|
|||||||
|
|
||||||
# Target the three most recently created objects to avoid triggering recursive deletions
|
# Target the three most recently created objects to avoid triggering recursive deletions
|
||||||
# (e.g. with django-tree-queries objects)
|
# (e.g. with django-tree-queries objects)
|
||||||
id_list = list(self._get_queryset().order_by('-id').values_list('id', flat=True)[:3])
|
id_list = list(self._get_queryset(with_tree_fields=False).order_by('-id').values_list('id', flat=True)[:3])
|
||||||
self.assertEqual(len(id_list), 3, "Insufficient number of objects to test bulk deletion")
|
self.assertEqual(len(id_list), 3, "Insufficient number of objects to test bulk deletion")
|
||||||
data = [{"id": id} for id in id_list]
|
data = [{"id": id} for id in id_list]
|
||||||
|
|
||||||
|
@ -12,6 +12,7 @@ from taggit.managers import TaggableManager
|
|||||||
|
|
||||||
from users.models import ObjectPermission
|
from users.models import ObjectPermission
|
||||||
from utilities.permissions import resolve_permission_ct
|
from utilities.permissions import resolve_permission_ct
|
||||||
|
from utilities.tree_queries import TreeQuerySet
|
||||||
from utilities.utils import content_type_identifier
|
from utilities.utils import content_type_identifier
|
||||||
from .utils import extract_form_failures
|
from .utils import extract_form_failures
|
||||||
|
|
||||||
@ -77,10 +78,13 @@ class ModelTestCase(TestCase):
|
|||||||
"""
|
"""
|
||||||
model = None
|
model = None
|
||||||
|
|
||||||
def _get_queryset(self):
|
def _get_queryset(self, with_tree_fields=True):
|
||||||
"""
|
"""
|
||||||
Return a base queryset suitable for use in test methods.
|
Return a base queryset suitable for use in test methods.
|
||||||
"""
|
"""
|
||||||
|
if not with_tree_fields and isinstance(self._get_queryset(), TreeQuerySet):
|
||||||
|
return self.model.objects.all().without_tree_fields()
|
||||||
|
|
||||||
return self.model.objects.all()
|
return self.model.objects.all()
|
||||||
|
|
||||||
def prepare_instance(self, instance):
|
def prepare_instance(self, instance):
|
||||||
|
@ -507,7 +507,7 @@ class ViewTestCases:
|
|||||||
response = self.client.post(**request)
|
response = self.client.post(**request)
|
||||||
self.assertHttpStatus(response, 302)
|
self.assertHttpStatus(response, 302)
|
||||||
self.assertEqual(initial_count + self.bulk_create_count, self._get_queryset().count())
|
self.assertEqual(initial_count + self.bulk_create_count, self._get_queryset().count())
|
||||||
for instance in self._get_queryset().order_by('-pk')[:self.bulk_create_count]:
|
for instance in self._get_queryset(with_tree_fields=False).order_by('-pk')[:self.bulk_create_count]:
|
||||||
self.assertInstanceEqual(instance, self.bulk_create_data, exclude=self.validation_excluded_fields)
|
self.assertInstanceEqual(instance, self.bulk_create_data, exclude=self.validation_excluded_fields)
|
||||||
|
|
||||||
@override_settings(EXEMPT_VIEW_PERMISSIONS=[])
|
@override_settings(EXEMPT_VIEW_PERMISSIONS=[])
|
||||||
@ -539,7 +539,7 @@ class ViewTestCases:
|
|||||||
response = self.client.post(**request)
|
response = self.client.post(**request)
|
||||||
self.assertHttpStatus(response, 302)
|
self.assertHttpStatus(response, 302)
|
||||||
self.assertEqual(initial_count + self.bulk_create_count, self._get_queryset().count())
|
self.assertEqual(initial_count + self.bulk_create_count, self._get_queryset().count())
|
||||||
for instance in self._get_queryset().order_by('-pk')[:self.bulk_create_count]:
|
for instance in self._get_queryset(with_tree_fields=False).order_by('-pk')[:self.bulk_create_count]:
|
||||||
self.assertInstanceEqual(instance, self.bulk_create_data, exclude=self.validation_excluded_fields)
|
self.assertInstanceEqual(instance, self.bulk_create_data, exclude=self.validation_excluded_fields)
|
||||||
|
|
||||||
class BulkImportObjectsViewTestCase(ModelViewTestCase):
|
class BulkImportObjectsViewTestCase(ModelViewTestCase):
|
||||||
|
@ -16,7 +16,11 @@ class TreeQuerySet(TreeQuerySet_, RestrictedQuerySet):
|
|||||||
Mate django-tree-queries TreeQuerySet with our RestrictedQuerySet for permissions enforcement.
|
Mate django-tree-queries TreeQuerySet with our RestrictedQuerySet for permissions enforcement.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
pass
|
def without_tree_fields(self):
|
||||||
|
"""
|
||||||
|
Requests no tree fields on this queryset
|
||||||
|
"""
|
||||||
|
return self.with_tree_fields(tree_fields=False)
|
||||||
|
|
||||||
|
|
||||||
class TreeManager(Manager.from_queryset(TreeQuerySet), TreeManager_):
|
class TreeManager(Manager.from_queryset(TreeQuerySet), TreeManager_):
|
||||||
@ -24,7 +28,7 @@ class TreeManager(Manager.from_queryset(TreeQuerySet), TreeManager_):
|
|||||||
Extend django-tree-queries TreeManager to incorporate RestrictedQuerySet().
|
Extend django-tree-queries TreeManager to incorporate RestrictedQuerySet().
|
||||||
"""
|
"""
|
||||||
|
|
||||||
_with_tree_fields = False
|
_with_tree_fields = True
|
||||||
|
|
||||||
def add_related_count(
|
def add_related_count(
|
||||||
self,
|
self,
|
||||||
|
Loading…
Reference in New Issue
Block a user