17 lines
873 B
Python
17 lines
873 B
Python
from app.services.dingtalk_auth import DingTalkAuthService
|
|
|
|
|
|
def test_dingtalk_role_mapping() -> None:
|
|
assert DingTalkAuthService.map_role("产品部", "产品经理") == "user"
|
|
assert DingTalkAuthService.map_role("品控部", "质量主管") == "user"
|
|
assert DingTalkAuthService.map_role("采购部", "采购专员") == "user"
|
|
assert DingTalkAuthService.map_role("", "审核员") == "user"
|
|
assert DingTalkAuthService.map_role("", "", is_admin=True) == "admin"
|
|
assert DingTalkAuthService.map_role("未知部门", "普通员工") == "user"
|
|
|
|
|
|
def test_dingtalk_manager_flag_variants() -> None:
|
|
assert DingTalkAuthService._is_dingtalk_manager({"admin": True})
|
|
assert DingTalkAuthService._is_dingtalk_manager({"leader_in_dept": [{"leader": True}]})
|
|
assert not DingTalkAuthService._is_dingtalk_manager({"admin": False, "leader_in_dept": []})
|