签入版本
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
"""system/dept service 单元测试(回归删除父级时禁止有子级)。"""
|
||||
import json
|
||||
|
||||
from modules.system.dept import service as dept_service
|
||||
from modules.system.dept.models import Dept
|
||||
from modules.system.dept.repository import dept_repo
|
||||
from modules.system.dept.schemas import DeptForm
|
||||
|
||||
|
||||
def _resp_body(resp):
|
||||
return json.loads(resp.body)
|
||||
|
||||
|
||||
def _form(**overrides):
|
||||
data = dict(name="总公司", code="HQ", type=1, parentId=None, sort=1, note=None)
|
||||
data.update(overrides)
|
||||
return DeptForm(**data)
|
||||
|
||||
|
||||
def test_delete_parent_with_child_blocked(fake_request, sqlite_db):
|
||||
dept_service.add_dept(fake_request, _form())
|
||||
parent = dept_repo.filter(Dept.name == "总公司").first()
|
||||
|
||||
dept_service.add_dept(
|
||||
fake_request,
|
||||
_form(name="研发部", code="RD", parentId=parent.id),
|
||||
)
|
||||
child = dept_repo.filter(Dept.name == "研发部").first()
|
||||
|
||||
resp = dept_service.delete_dept(str(parent.id))
|
||||
assert _resp_body(resp)["code"] != 0
|
||||
assert dept_repo.get_by_id(parent.id).is_delete == 0
|
||||
assert dept_repo.get_by_id(child.id).is_delete == 0
|
||||
|
||||
|
||||
def test_delete_leaf_soft_deletes(fake_request, sqlite_db):
|
||||
dept_service.add_dept(fake_request, _form())
|
||||
leaf = dept_repo.filter(Dept.name == "总公司").first()
|
||||
|
||||
resp = dept_service.delete_dept(str(leaf.id))
|
||||
assert _resp_body(resp)["code"] == 0
|
||||
assert dept_repo.filter(Dept.id == leaf.id).first().is_delete == 1
|
||||
Reference in New Issue
Block a user