From 67a5a3a68c6440710ac6ddeff0c06755e9326010 Mon Sep 17 00:00:00 2001 From: Claude Bot Date: Tue, 27 Jan 2026 07:16:40 +0000 Subject: [PATCH] fix: use deterministic code values in test Replace non-deterministic Math.random() code values with deterministic constants to prevent potential UNIQUE constraint collisions and improve test readability. Co-Authored-By: Claude Opus 4.5 --- test/regression/issue/25552.test.ts | 30 +++++++++-------------------- 1 file changed, 9 insertions(+), 21 deletions(-) diff --git a/test/regression/issue/25552.test.ts b/test/regression/issue/25552.test.ts index efada7f28e..83fae36bd1 100644 --- a/test/regression/issue/25552.test.ts +++ b/test/regression/issue/25552.test.ts @@ -41,14 +41,14 @@ describeWithContainer( try { // Phase 1 - First transaction with multiple INSERTs await sql.begin(async tx => { - await tx`INSERT INTO ${sql(random_name)} (name, code) VALUES (${"Name 11"}, ${`CODE_${Math.random().toString().slice(2)}`})`; - await tx`INSERT INTO ${sql(random_name)} (name, code) VALUES (${"Name 12"}, ${`CODE_${Math.random().toString().slice(2)}`})`; + await tx`INSERT INTO ${sql(random_name)} (name, code) VALUES (${"Name 11"}, ${"CODE_11"})`; + await tx`INSERT INTO ${sql(random_name)} (name, code) VALUES (${"Name 12"}, ${"CODE_12"})`; }); // Phase 2 - Second sequential transaction (this would hang before the fix) await sql.begin(async tx => { - await tx`INSERT INTO ${sql(random_name)} (name, code) VALUES (${"Name 21"}, ${`CODE_${Math.random().toString().slice(2)}`})`; - await tx`INSERT INTO ${sql(random_name)} (name, code) VALUES (${"Name 22"}, ${`CODE_${Math.random().toString().slice(2)}`})`; + await tx`INSERT INTO ${sql(random_name)} (name, code) VALUES (${"Name 21"}, ${"CODE_21"})`; + await tx`INSERT INTO ${sql(random_name)} (name, code) VALUES (${"Name 22"}, ${"CODE_22"})`; }); // Verify all 4 rows were inserted @@ -73,7 +73,7 @@ describeWithContainer( // Run multiple sequential transactions in a loop for (let i = 0; i < 5; i++) { await sql.begin(async tx => { - await tx`INSERT INTO ${sql(random_name)} (name, code) VALUES (${`Name ${i}`}, ${`CODE_${i}_${Math.random().toString().slice(2)}`})`; + await tx`INSERT INTO ${sql(random_name)} (name, code) VALUES (${`Name ${i}`}, ${`CODE_${i}`})`; }); } @@ -99,26 +99,14 @@ describeWithContainer( try { // Phase 1 - Using unsafe() as shown in the original issue await sql.begin(async tx => { - await tx.unsafe("INSERT INTO " + random_name + " (name, code) VALUES (?, ?)", [ - "Name 11", - "CODE_" + Math.random().toString().slice(2), - ]); - await tx.unsafe("INSERT INTO " + random_name + " (name, code) VALUES (?, ?)", [ - "Name 12", - "CODE_" + Math.random().toString().slice(2), - ]); + await tx.unsafe("INSERT INTO " + random_name + " (name, code) VALUES (?, ?)", ["Name 11", "CODE_11"]); + await tx.unsafe("INSERT INTO " + random_name + " (name, code) VALUES (?, ?)", ["Name 12", "CODE_12"]); }); // Phase 2 - This would hang before the fix await sql.begin(async tx => { - await tx.unsafe("INSERT INTO " + random_name + " (name, code) VALUES (?, ?)", [ - "Name 21", - "CODE_" + Math.random().toString().slice(2), - ]); - await tx.unsafe("INSERT INTO " + random_name + " (name, code) VALUES (?, ?)", [ - "Name 22", - "CODE_" + Math.random().toString().slice(2), - ]); + await tx.unsafe("INSERT INTO " + random_name + " (name, code) VALUES (?, ?)", ["Name 21", "CODE_21"]); + await tx.unsafe("INSERT INTO " + random_name + " (name, code) VALUES (?, ?)", ["Name 22", "CODE_22"]); }); // Verify all 4 rows were inserted