This commit is contained in:
@@ -133,6 +133,34 @@ class Release067AutochessTests(unittest.TestCase):
|
||||
self.assertNotIn("克制修正", report)
|
||||
self.assertIsNotNone(re.search(r"\b\d{2}-\d{1,2}\b", report))
|
||||
|
||||
def test_legacy_active_run_does_not_block_new_schema_three_season(self):
|
||||
self.command("/自走棋开始")
|
||||
state = self.state()
|
||||
state["schema_version"] = 2
|
||||
state["status"] = "active"
|
||||
self.engine.ledger.connection.execute(
|
||||
"""
|
||||
UPDATE autochess_runs
|
||||
SET state = 'active', state_json = ?
|
||||
WHERE group_fingerprint = 'group-a' AND run_id = ?
|
||||
""",
|
||||
(
|
||||
json.dumps(state, ensure_ascii=False, sort_keys=True),
|
||||
state["run_id"],
|
||||
),
|
||||
)
|
||||
self.engine.ledger.connection.commit()
|
||||
|
||||
response = "\n".join(
|
||||
self.command("/自走棋开始", event_id="legacy-active-create")
|
||||
)
|
||||
new_state = self.state()
|
||||
|
||||
self.assertIn("旧版未完成赛事", response)
|
||||
self.assertEqual(new_state["schema_version"], 3)
|
||||
self.assertEqual(new_state["season_number"], 2)
|
||||
self.assertEqual(new_state["status"], "registration")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
|
||||
Reference in New Issue
Block a user