feat(douyu): support elite handbook lock orders

This commit is contained in:
yml2213
2026-08-28 14:06:11 +08:00
parent 49aae8b74c
commit 9ee4e49a50
8 changed files with 471 additions and 59 deletions
+25
View File
@@ -90,6 +90,31 @@ class DouyuWorkbenchScopeTests(unittest.TestCase):
self.session, [self.account.id], "get_xpd_bind_qr", "elite", self.user.id,
)
def test_elite_workbench_accepts_lock_goods_task(self):
batch_id, count = create_douyu_planned_tasks(
self.session,
[self.account.id],
"lock_goods",
"elite",
self.user.id,
{"commodity_id": "goods-1"},
)
task = self.session.query(DouyuTask).filter(DouyuTask.batch_id == batch_id).one()
self.assertEqual(count, 1)
self.assertEqual(task.task_type, "lock_goods")
self.assertEqual(task.result, {"payload": {"commodity_id": "goods-1"}})
_, pay_count = create_douyu_planned_tasks(
self.session,
[self.account.id],
"pay_locked_order",
"elite",
self.user.id,
{"order_id": "5874", "commodity_id": "goods-1"},
)
self.assertEqual(pay_count, 1)
def test_account_deletion_removes_workbench_membership(self):
self.session.add(DouyuWorkbenchAccount(
user_id=self.user.id,