Migrate remaining legacy operator workflows

This commit is contained in:
2026-07-12 05:39:27 +09:00
parent ffb8f43c19
commit a01836a2d7
132 changed files with 20566 additions and 720 deletions

View File

@@ -127,6 +127,28 @@ test("trusted entries serialize to the exact original seven LIST_TEXT fields", (
]);
});
test("legacy LIST_TEXT accepts a bounded 100-name VI subject beyond 256 characters", () => {
const names = Array.from(
{ length: 100 },
(_, index) => `종목${String(index).padStart(3, "0")}`).join(",");
assert.ok(names.length > 256);
const fields = ["1", "", names, "5단 표그래프", "VI 발동(수동)", "1/20", ""];
const serialized = workflow.legacyListText(fields);
assert.ok(serialized.length <= 4000);
const response = workflow.normalizeLoadResponse(loadResponse([nativeRow({
groupCode: "",
subject: names,
graphicType: "5단 표그래프",
subtype: "VI 발동(수동)",
pageText: "1/20",
dataCode: ""
})]));
assert.equal(response.rawRows[0].subject, names);
assert.throws(() => workflow.legacyListText([
"1", "", "가".repeat(3990), "5단 표그래프", "VI 발동(수동)", "1/20", ""
]), /too long/u);
});
test("database replacement requires trusted verification and enforces the 1000-row bound", () => {
assert.throws(() => workflow.createReplaceRequest(
"replace", "00000001", [trustedEntry()]), /trusted-entry verifier/i);