refactor(human_resources): Update Functional ViewSet to use PyTest for Employee Model

ref: #761 #730
This commit is contained in:
2025-05-16 03:10:00 +09:30
parent 07277862cf
commit 1663f19b2a
2 changed files with 46 additions and 135 deletions

View File

@ -0,0 +1,24 @@
import pytest
from human_resources.models.employee import Employee
@pytest.fixture( scope = 'class')
def model(request):
request.cls.model = Employee
yield request.cls.model
del request.cls.model
@pytest.fixture(scope='function')
def create_serializer():
from human_resources.serializers.entity_employee import ModelSerializer
yield ModelSerializer

View File

@ -1,8 +1,7 @@
from django.test import TestCase
from access.tests.functional.contact.test_functional_contact_viewset import (
ContactMetadataInheritedCases,
ContactPermissionsAPIInheritedCases,
ContactViewSetInheritedCases
)
@ -10,87 +9,23 @@ from human_resources.models.employee import Employee
class ViewSetBase:
add_data = {
'email': 'ipfunny@unit.test',
'employee_number': 123456,
}
kwargs_create_item_diff_org = {
'email': 'ipstrange@unit.test',
'employee_number': 1234567,
}
kwargs_create_item = {
'email': 'ipweird@unit.test',
'employee_number': 1234568,
}
model = Employee
url_kwargs: dict = {}
url_view_kwargs: dict = {}
class PermissionsAPITestCases(
ViewSetBase,
ContactPermissionsAPIInheritedCases,
):
pass
class EmployeePermissionsAPIInheritedCases(
PermissionsAPITestCases,
):
add_data: dict = None
model = None
kwargs_create_item: dict = None
kwargs_create_item_diff_org: dict = None
@classmethod
def setUpTestData(self):
self.add_data.update(
super().add_data
)
self.kwargs_create_item.update(
super().kwargs_create_item
)
self.kwargs_create_item_diff_org.update(
super().kwargs_create_item_diff_org
)
super().setUpTestData()
class EmployeePermissionsAPITest(
PermissionsAPITestCases,
TestCase,
):
pass
class ViewSetTestCases(
ViewSetBase,
ContactViewSetInheritedCases,
):
pass
add_data: dict = {
'employee_number': 123,
}
kwargs_create_item: dict = {
'employee_number': 456,
}
kwargs_create_item_diff_org: dict = {
'employee_number': 789,
}
model = Employee
@ -100,21 +35,19 @@ class EmployeeViewSetInheritedCases(
model = None
kwargs_create_item: dict = None
kwargs_create_item_diff_org: dict = None
@classmethod
def setUpTestData(self):
self.kwargs_create_item.update(
super().kwargs_create_item
)
self.kwargs_create_item = {
**super().kwargs_create_item,
**self.kwargs_create_item
}
self.kwargs_create_item_diff_org.update(
super().kwargs_create_item_diff_org
)
self.kwargs_create_item_diff_org = {
**super().kwargs_create_item_diff_org,
**self.kwargs_create_item_diff_org
}
super().setUpTestData()
@ -124,50 +57,4 @@ class EmployeeViewSetTest(
ViewSetTestCases,
TestCase,
):
pass
class MetadataTestCases(
ViewSetBase,
ContactMetadataInheritedCases,
):
pass
class EmployeeMetadataInheritedCases(
MetadataTestCases,
):
model = None
kwargs_create_item: dict = None
kwargs_create_item_diff_org: dict = None
@classmethod
def setUpTestData(self):
self.kwargs_create_item.update(
super().kwargs_create_item
)
self.kwargs_create_item_diff_org.update(
super().kwargs_create_item_diff_org
)
super().setUpTestData()
class EmployeeMetadataTest(
MetadataTestCases,
TestCase,
):
pass