diff --git a/server/typescript/packages/migrate-ts/test/integration/lifecycle-pg.test.ts b/server/typescript/packages/migrate-ts/test/integration/lifecycle-pg.test.ts index b3aedecd9..d137ddd31 100644 --- a/server/typescript/packages/migrate-ts/test/integration/lifecycle-pg.test.ts +++ b/server/typescript/packages/migrate-ts/test/integration/lifecycle-pg.test.ts @@ -159,7 +159,7 @@ d("migrate-ts lifecycle against real Postgres", () => { expect(orders1.indexes.some((i) => i.unique && i.columns.includes("email"))).toBe(true); // enum + numeric checks present expect(checkExprs(orders1)).toEqual( - ["qty >= 1", "status in 'open', 'closed'"].sort(), + ["qty >= 1", "status in 'open','closed'"].sort(), ); // ---- v2: evolve --------------------------------------------------------- @@ -189,7 +189,7 @@ d("migrate-ts lifecycle against real Postgres", () => { expect(orders2.foreignKeys.some((f) => f.refTable === "lc_customers")).toBe(true); // evolved checks const c2 = checkExprs(orders2); - expect(c2).toContain("status in 'open', 'closed', 'cancelled'"); + expect(c2).toContain("status in 'open','closed','cancelled'"); expect(c2).toContain("qty >= 1 and qty <= 1000"); // ---- rollback v2 → v1 (down) -------------------------------------------- @@ -203,7 +203,7 @@ d("migrate-ts lifecycle against real Postgres", () => { expect(colNames(ordersBack)).toEqual(["email", "id", "qty", "status"]); // note/customerId dropped expect(ordersBack.foreignKeys).toHaveLength(0); // fk dropped expect(checkExprs(ordersBack)).toEqual( - ["qty >= 1", "status in 'open', 'closed'"].sort(), // original checks restored + ["qty >= 1", "status in 'open','closed'"].sort(), // original checks restored ); // ---- idempotency: re-diff v1 against the live (rolled-back) DB ---------- @@ -326,7 +326,7 @@ d("migrate-ts lifecycle against real Postgres", () => { expect(posts.foreignKeys.some((f) => f.refTable === "gf_users")).toBe(true); expect(comments.foreignKeys.map((f) => f.refTable).sort()).toEqual(["gf_posts", "gf_users"]); // enum + numeric checks + unique indexes survived the round-trip - expect(checkExprs(gf.find((t) => t.name === "gf_users")!)).toContain("role in 'admin', 'editor', 'viewer'"); + expect(checkExprs(gf.find((t) => t.name === "gf_users")!)).toContain("role in 'admin','editor','viewer'"); expect(checkExprs(posts).some((e) => e.includes("views >= 0"))).toBe(true); expect(gf.find((t) => t.name === "gf_tags")!.indexes.some((i) => i.unique && i.columns.includes("name"))).toBe(true); diff --git a/server/typescript/packages/migrate-ts/test/integration/pg-adversarial-fixes.test.ts b/server/typescript/packages/migrate-ts/test/integration/pg-adversarial-fixes.test.ts index 14cdffb2b..0bab0fa84 100644 --- a/server/typescript/packages/migrate-ts/test/integration/pg-adversarial-fixes.test.ts +++ b/server/typescript/packages/migrate-ts/test/integration/pg-adversarial-fixes.test.ts @@ -39,6 +39,7 @@ const META = JSON.stringify({ "object.entity": { name: "Reading", children: [ + { "source.rdb": { "@table": "readings" } }, { "field.long": { name: "id" } }, // Bug 6 — the scalar @isArray fan-out beyond string/uuid. { "field.int": { name: "counts", isArray: true } }, diff --git a/server/typescript/packages/migrate-ts/test/integration/postgres-lenient-inet.test.ts b/server/typescript/packages/migrate-ts/test/integration/postgres-lenient-inet.test.ts index cda70cef0..3346ba3f5 100644 --- a/server/typescript/packages/migrate-ts/test/integration/postgres-lenient-inet.test.ts +++ b/server/typescript/packages/migrate-ts/test/integration/postgres-lenient-inet.test.ts @@ -35,6 +35,7 @@ const META = JSON.stringify({ "object.entity": { name: "Endpoint", children: [ + { "source.rdb": { "@table": "endpoints" } }, { "field.long": { name: "id" } }, { "field.inet": { name: "strictIp" } }, { "field.inet": { name: "lenientIp", "@lenient": true } },