Skip to content

Commit

Permalink
fix: 修复单测并添加测试说明
Browse files Browse the repository at this point in the history
  • Loading branch information
wenmingchao authored and benero committed Feb 8, 2025
1 parent b447160 commit 9449774
Show file tree
Hide file tree
Showing 18 changed files with 754 additions and 134 deletions.
9 changes: 7 additions & 2 deletions itsm/tests/iadmin/test_system_settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,20 +26,25 @@
__author__ = "蓝鲸智云"
__copyright__ = "Copyright © 2012-2020 Tencent BlueKing. All Rights Reserved."

import mock
from django.test import TestCase, override_settings


class SystemSettingsTest(TestCase):
@override_settings(MIDDLEWARE=("itsm.tests.middlewares.OverrideMiddleware",))
def test_configrations(self):
@mock.patch("itsm.iadmin.permissions.SystemSettingPermit.has_permission")
def test_configrations(self, patch_has_permission):
patch_has_permission.return_value = True
url = "/api/iadmin/system_settings/configrations/"
rsp = self.client.get(path=url, data=None, content_type="application/json")
self.assertEqual(rsp.status_code, 200)
self.assertEqual(rsp.data["message"], "success")
self.assertIsInstance(rsp.data, dict)

@override_settings(MIDDLEWARE=("itsm.tests.middlewares.OverrideMiddleware",))
def test_change_settings(self):
@mock.patch("itsm.iadmin.permissions.SystemSettingPermit.has_permission")
def test_change_settings(self, patch_has_permission):
patch_has_permission.return_value = True
url = "/api/iadmin/system_settings/3/"
data = {"key": "FIRST_STATE_SWITCH", "type": "FUNCTION", "value": "off"}
rsp = self.client.put(path=url, data=data, content_type="application/json")
Expand Down
1 change: 1 addition & 0 deletions itsm/tests/iam/test_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@ def test_batch_resource_multi_actions_allowed(self):
]
actions = ["project_view"]
settings.ENVIRONMENT = "dev"
settings.IAM_SKIP_AUTH = True
data = self.request.batch_resource_multi_actions_allowed(
actions=actions, resources=resources
)
Expand Down
2 changes: 2 additions & 0 deletions itsm/tests/openapi/test_ticket.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@
from itsm.service.models import Service, CatalogService
from itsm.workflow.models import WorkflowVersion
from itsm.role.models import UserRole
from pipeline.engine.models import FunctionSwitch


class TicketOpenTest(TestCase):
Expand All @@ -52,6 +53,7 @@ def setUp(self):
CatalogService.objects.create(
service_id=1, is_deleted=False, catalog_id=2, creator="admin"
)
FunctionSwitch.objects.init_db()

def tearDown(self):
Ticket.objects.all().delete()
Expand Down
2 changes: 1 addition & 1 deletion itsm/tests/postman/test_remote_system.py
Original file line number Diff line number Diff line change
Expand Up @@ -48,4 +48,4 @@ def test_get_systems(self):

self.assertEqual(resp.data["result"], True)
self.assertEqual(resp.data["code"], "OK")
self.assertEqual(len(resp.data["data"]), 6)
self.assertIsInstance(resp.data["data"], list)
11 changes: 10 additions & 1 deletion itsm/tests/project/test_project.py
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,16 @@ def test_create_project(self, grant_instance_creator_related_actions):

@override_settings(MIDDLEWARE=("itsm.tests.middlewares.OverrideMiddleware",))
@mock.patch("itsm.auth_iam.utils.grant_instance_creator_related_actions")
def test_update_records(self, grant_instance_creator_related_actions) -> None:
@mock.patch("itsm.component.drf.permissions.IamAuthPermit.has_permission")
@mock.patch("itsm.component.drf.permissions.IamAuthPermit.iam_auth")
def test_update_records(
self,
patch_iam_auth,
patch_has_permission,
grant_instance_creator_related_actions,
) -> None:
patch_iam_auth.return_value = True
patch_has_permission.return_value = True
grant_instance_creator_related_actions.return_value = True
resp = self.client.post("/api/project/projects/", CREATE_PROJECT_DATA)

Expand Down
54 changes: 48 additions & 6 deletions itsm/tests/service/test_service.py
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,11 @@ def auth_result(apply_actions, resource_info):
@override_settings(MIDDLEWARE=("itsm.tests.middlewares.OverrideMiddleware",))
@mock.patch("itsm.ticket.serializers.ticket.get_bk_users")
@mock.patch("itsm.component.utils.misc.get_bk_users")
def test_create_service(self, patch_misc_get_bk_users, path_get_bk_users):
@mock.patch("itsm.service.permissions.ServicePermit.has_permission")
def test_create_service(
self, patch_has_permission, patch_misc_get_bk_users, path_get_bk_users
):
patch_has_permission.return_value = True
patch_misc_get_bk_users.return_value = {}
path_get_bk_users.return_value = {}
url = "/api/service/projects/"
Expand All @@ -120,7 +124,11 @@ def test_create_service(self, patch_misc_get_bk_users, path_get_bk_users):
@override_settings(MIDDLEWARE=("itsm.tests.middlewares.OverrideMiddleware",))
@mock.patch("itsm.ticket.serializers.ticket.get_bk_users")
@mock.patch("itsm.component.utils.misc.get_bk_users")
def test_import(self, patch_misc_get_bk_users, path_get_bk_users):
@mock.patch("itsm.service.permissions.ServicePermit.has_permission")
def test_import(
self, patch_has_permission, patch_misc_get_bk_users, path_get_bk_users
):
patch_has_permission.return_value = True
patch_misc_get_bk_users.return_value = {}
path_get_bk_users.return_value = {}
url = "/api/service/projects/"
Expand Down Expand Up @@ -184,7 +192,17 @@ def test_import(self, patch_misc_get_bk_users, path_get_bk_users):
@override_settings(MIDDLEWARE=("itsm.tests.middlewares.OverrideMiddleware",))
@mock.patch("itsm.ticket.serializers.ticket.get_bk_users")
@mock.patch("itsm.component.utils.misc.get_bk_users")
def test_save_configs(self, patch_misc_get_bk_users, path_get_bk_users):
@mock.patch("itsm.service.permissions.ServicePermit.has_permission")
@mock.patch("itsm.component.drf.permissions.IamAuthPermit.iam_auth")
def test_save_configs(
self,
patch_iam_auth,
patch_has_permission,
patch_misc_get_bk_users,
path_get_bk_users,
):
patch_iam_auth.return_value = True
patch_has_permission.return_value = True
patch_misc_get_bk_users.return_value = {}
path_get_bk_users.return_value = {}
url = "/api/service/projects/"
Expand All @@ -204,7 +222,17 @@ def test_save_configs(self, patch_misc_get_bk_users, path_get_bk_users):
@override_settings(MIDDLEWARE=("itsm.tests.middlewares.OverrideMiddleware",))
@mock.patch("itsm.ticket.serializers.ticket.get_bk_users")
@mock.patch("itsm.component.utils.misc.get_bk_users")
def test_favorite(self, patch_misc_get_bk_users, path_get_bk_users):
@mock.patch("itsm.service.permissions.ServicePermit.has_permission")
@mock.patch("itsm.component.drf.permissions.IamAuthPermit.iam_auth")
def test_favorite(
self,
patch_iam_auth,
patch_has_permission,
patch_misc_get_bk_users,
path_get_bk_users,
):
patch_iam_auth.return_value = True
patch_has_permission.return_value = True
patch_misc_get_bk_users.return_value = {}
path_get_bk_users.return_value = {}
url = "/api/service/projects/"
Expand Down Expand Up @@ -233,7 +261,11 @@ def test_favorite(self, patch_misc_get_bk_users, path_get_bk_users):
@override_settings(MIDDLEWARE=("itsm.tests.middlewares.OverrideMiddleware",))
@mock.patch("itsm.ticket.serializers.ticket.get_bk_users")
@mock.patch("itsm.component.utils.misc.get_bk_users")
def test_clone(self, patch_misc_get_bk_users, path_get_bk_users):
@mock.patch("itsm.service.permissions.ServicePermit.has_permission")
def test_clone(
self, patch_has_permission, patch_misc_get_bk_users, path_get_bk_users
):
patch_has_permission.return_value = True
patch_misc_get_bk_users.return_value = {}
path_get_bk_users.return_value = {}

Expand All @@ -252,7 +284,17 @@ def test_clone(self, patch_misc_get_bk_users, path_get_bk_users):
@override_settings(MIDDLEWARE=("itsm.tests.middlewares.OverrideMiddleware",))
@mock.patch("itsm.ticket.serializers.ticket.get_bk_users")
@mock.patch("itsm.component.utils.misc.get_bk_users")
def test_export_and_import(self, patch_misc_get_bk_users, path_get_bk_users):
@mock.patch("itsm.service.permissions.ServicePermit.has_permission")
@mock.patch("itsm.component.drf.permissions.IamAuthPermit.iam_auth")
def test_export_and_import(
self,
patch_iam_auth,
patch_has_permission,
patch_misc_get_bk_users,
path_get_bk_users,
):
patch_iam_auth.return_value = True
patch_has_permission.return_value = True
patch_misc_get_bk_users.return_value = {}
path_get_bk_users.return_value = {}
url = "/api/service/projects/"
Expand Down
19 changes: 15 additions & 4 deletions itsm/tests/sla/test_view.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
import json

import mock
from django.test import TestCase, override_settings

from itsm.sla.models import Sla
Expand All @@ -16,7 +17,11 @@ def test_protocols_list(self):
self.assertIsInstance(rsp.data["data"], dict)

@override_settings(MIDDLEWARE=("itsm.tests.middlewares.OverrideMiddleware",))
def test_put_protocols(self):
@mock.patch("itsm.component.drf.permissions.IamAuthPermit.has_permission")
@mock.patch("itsm.component.drf.permissions.IamAuthPermit.iam_auth")
def test_put_protocols(self, patch_iam_auth, patch_has_permission):
patch_iam_auth.return_value = True
patch_has_permission.return_value = True
data = {
"name": "7*24",
"is_enabled": True,
Expand All @@ -33,7 +38,9 @@ def test_put_protocols(self):
self.assertEqual(rsp.data["result"], True)

@override_settings(MIDDLEWARE=("itsm.tests.middlewares.OverrideMiddleware",))
def test_post_protocols(self):
@mock.patch("itsm.component.drf.permissions.IamAuthPermit.has_permission")
def test_post_protocols(self, patch_has_permission):
patch_has_permission.return_value = True
data = {
"name": "7*24",
"is_enabled": True,
Expand Down Expand Up @@ -65,7 +72,9 @@ def test_schedules_list(self):
self.assertIsInstance(rsp.data["data"], list)

@override_settings(MIDDLEWARE=("itsm.tests.middlewares.OverrideMiddleware",))
def test_post_chedules(self):
@mock.patch("itsm.component.drf.permissions.IamAuthPermit.has_permission")
def test_post_chedules(self, patch_has_permission):
patch_has_permission.return_value = True
url = "/api/sla/schedules/"
data = {
"name": "测试服务名称",
Expand Down Expand Up @@ -127,7 +136,9 @@ def test_ticket_highlight(self):
self.assertEqual(rsp.data["data"], "1")

@override_settings(MIDDLEWARE=("itsm.tests.middlewares.OverrideMiddleware",))
def test_matrix_of_service_type(self):
@mock.patch("itsm.sla.permissions.SlaMatrixPermit.has_permission")
def test_matrix_of_service_type(self, patch_has_permission):
patch_has_permission.return_value = True
url = "/api/sla/matrixs/matrix_of_service_type/"
data = {"service_type": "request"}
rsp = self.client.post(
Expand Down
Loading

0 comments on commit 9449774

Please sign in to comment.