refactor(project_management): API Metadata Functional Test Suite re-written to Pytest for model ProjectState
ref: #938 #936
This commit is contained in:
@ -262,7 +262,13 @@ class TicketBaseModelTestCases(
|
||||
|
||||
ticket = model.objects.create( **kwargs )
|
||||
|
||||
project_one = model_project.objects.create( **kwargs_project )
|
||||
kwargs_proj = kwargs_project.copy()
|
||||
team_members = kwargs_proj['team_members']
|
||||
del kwargs_proj['team_members']
|
||||
del kwargs_proj['code']
|
||||
|
||||
project_one = model_project.objects.create( **kwargs_proj )
|
||||
project_one.team_members.add( team_members[0] )
|
||||
|
||||
|
||||
kwargs = kwargs_projectmilestone
|
||||
@ -271,7 +277,12 @@ class TicketBaseModelTestCases(
|
||||
|
||||
kwargs = kwargs_project
|
||||
kwargs['name'] = 'project_two'
|
||||
team_members = kwargs['team_members']
|
||||
del kwargs['team_members']
|
||||
del kwargs['code']
|
||||
|
||||
project_two = model_project.objects.create( **kwargs )
|
||||
project_two.team_members.add( team_members[0] )
|
||||
|
||||
kwargs = kwargs_projectmilestone
|
||||
kwargs['name'] = 'two'
|
||||
|
@ -15,88 +15,6 @@ class ProjectMilestoneAPITestCases(
|
||||
APIFieldsInheritedCases,
|
||||
):
|
||||
|
||||
# @pytest.fixture( scope = 'class')
|
||||
# def second_model(self, request, django_db_blocker,
|
||||
# model, model_kwargs,
|
||||
# model_team, kwargs_team
|
||||
# ):
|
||||
|
||||
# item = None
|
||||
|
||||
# with django_db_blocker.unblock():
|
||||
|
||||
# kwargs_many_to_many = {}
|
||||
|
||||
# kwargs = {}
|
||||
|
||||
# for key, value in model_kwargs.items():
|
||||
|
||||
# field = model._meta.get_field(key)
|
||||
|
||||
# if isinstance(field, models.ManyToManyField):
|
||||
|
||||
# kwargs_many_to_many.update({
|
||||
# key: value
|
||||
# })
|
||||
|
||||
# else:
|
||||
|
||||
# kwargs.update({
|
||||
# key: value
|
||||
# })
|
||||
|
||||
|
||||
# # # Switch model fields so all fields can be checked
|
||||
# # kwargs_many_to_many.update({ 'devices': kwargs_many_to_many['nodes']})
|
||||
# # del kwargs_many_to_many['nodes']
|
||||
# # # del kwargs_many_to_many['target_team']
|
||||
|
||||
# # kwargs.update({ 'parent_projectmilestone': self.item})
|
||||
# del kwargs['manager_user']
|
||||
# manager_team = model_team.objects.create( **kwargs_team )
|
||||
# kwargs['manager_team'] = manager_team
|
||||
# kwargs['external_ref'] = 1
|
||||
# kwargs['external_system'] = 1
|
||||
|
||||
# kwargs['name'] = 'pro two'
|
||||
# del kwargs['code']
|
||||
|
||||
|
||||
# item_two = model.objects.create(
|
||||
# **kwargs
|
||||
# )
|
||||
|
||||
|
||||
# for key, value in kwargs_many_to_many.items():
|
||||
|
||||
# field = getattr(item_two, key)
|
||||
|
||||
# for entry in value:
|
||||
|
||||
# field.add(entry)
|
||||
|
||||
|
||||
# request.cls.item_two = item_two
|
||||
|
||||
# yield item_two
|
||||
|
||||
# with django_db_blocker.unblock():
|
||||
|
||||
# item_two.delete()
|
||||
# manager_team.delete()
|
||||
|
||||
# del request.cls.item_two
|
||||
|
||||
|
||||
# @pytest.fixture( scope = 'class', autouse = True)
|
||||
# def class_setup(self,
|
||||
# create_model,
|
||||
# second_model,
|
||||
# make_request,
|
||||
# ):
|
||||
|
||||
# pass
|
||||
|
||||
|
||||
@property
|
||||
def parameterized_api_fields(self):
|
||||
|
@ -7,22 +7,22 @@ from core.tests.functional.centurion_abstract.test_functional_centurion_abstract
|
||||
|
||||
|
||||
@pytest.mark.model_project
|
||||
class ProjectModelTestCases(
|
||||
class ProjectMilestoneModelTestCases(
|
||||
CenturionAbstractModelInheritedCases
|
||||
):
|
||||
pass
|
||||
|
||||
|
||||
|
||||
class ProjectModelInheritedCases(
|
||||
ProjectModelTestCases,
|
||||
class ProjectMilestoneModelInheritedCases(
|
||||
ProjectMilestoneModelTestCases,
|
||||
):
|
||||
pass
|
||||
|
||||
|
||||
|
||||
@pytest.mark.module_project_management
|
||||
class ProjectModelPyTest(
|
||||
ProjectModelTestCases,
|
||||
class ProjectMilestoneModelPyTest(
|
||||
ProjectMilestoneModelTestCases,
|
||||
):
|
||||
pass
|
||||
|
@ -0,0 +1,25 @@
|
||||
import pytest
|
||||
|
||||
|
||||
|
||||
@pytest.fixture( scope = 'class')
|
||||
def model(model_projectstate):
|
||||
|
||||
yield model_projectstate
|
||||
|
||||
|
||||
@pytest.fixture( scope = 'class', autouse = True)
|
||||
def model_kwargs(request, kwargs_projectstate):
|
||||
|
||||
request.cls.kwargs_create_item = kwargs_projectstate.copy()
|
||||
|
||||
yield kwargs_projectstate.copy()
|
||||
|
||||
if hasattr(request.cls, 'kwargs_create_item'):
|
||||
del request.cls.kwargs_create_item
|
||||
|
||||
|
||||
@pytest.fixture( scope = 'class')
|
||||
def model_serializer(serializer_projectstate):
|
||||
|
||||
yield serializer_projectstate
|
@ -9,8 +9,6 @@ from access.models.tenant import Tenant as Organization
|
||||
from access.models.team import Team
|
||||
from access.models.team_user import TeamUsers
|
||||
|
||||
from api.tests.abstract.api_permissions_viewset import APIPermissions
|
||||
from api.tests.abstract.api_serializer_viewset import SerializersTestCases
|
||||
from api.tests.abstract.test_metadata_functional import MetadataAttributesFunctional
|
||||
|
||||
from project_management.models.project_states import ProjectState
|
||||
@ -21,6 +19,7 @@ User = django.contrib.auth.get_user_model()
|
||||
|
||||
|
||||
|
||||
@pytest.mark.model_projectstate
|
||||
class ViewSetBase:
|
||||
|
||||
model = ProjectState
|
||||
@ -216,18 +215,7 @@ class ViewSetBase:
|
||||
|
||||
|
||||
|
||||
class ProjectStatePermissionsAPI(ViewSetBase, APIPermissions, TestCase):
|
||||
|
||||
pass
|
||||
|
||||
|
||||
|
||||
class ProjectStateViewSet(ViewSetBase, SerializersTestCases, TestCase):
|
||||
|
||||
pass
|
||||
|
||||
|
||||
|
||||
@pytest.mark.module_project_management
|
||||
class ProjectStateMetadata(
|
||||
ViewSetBase,
|
||||
MetadataAttributesFunctional,
|
Reference in New Issue
Block a user