test_pl_personnel_sys_user_bind.py 856 B

12345678910111213141516171819202122232425262728293031323334
  1. from app.services.pl_personnel_user_bind import assert_sys_user_bind_available
  2. class FakeRow:
  3. def __init__(self, id, sys_user_id, del_flag=0):
  4. self.id = id
  5. self.sys_user_id = sys_user_id
  6. self.del_flag = del_flag
  7. def test_bind_ok_when_empty():
  8. assert_sys_user_bind_available(
  9. existing=[], personnel_id="p1", sys_user_id="u1"
  10. )
  11. def test_bind_rejects_other_personnel():
  12. try:
  13. assert_sys_user_bind_available(
  14. existing=[FakeRow("p2", "u1")],
  15. personnel_id="p1",
  16. sys_user_id="u1",
  17. )
  18. assert False, "expected ValueError"
  19. except ValueError as e:
  20. assert "已关联" in str(e)
  21. def test_bind_allows_self():
  22. assert_sys_user_bind_available(
  23. existing=[FakeRow("p1", "u1")],
  24. personnel_id="p1",
  25. sys_user_id="u1",
  26. )