From d8d26463dbcb3312321dd66f98083d123d52307d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mika=C3=ABl=20Francoeur?= Date: Fri, 4 Jul 2025 11:18:47 -0400 Subject: [PATCH] add new test --- .../javascript/__test__/better-sqlite3.spec.mjs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/bindings/javascript/__test__/better-sqlite3.spec.mjs b/bindings/javascript/__test__/better-sqlite3.spec.mjs index 7c7e49f19..2ede7e163 100644 --- a/bindings/javascript/__test__/better-sqlite3.spec.mjs +++ b/bindings/javascript/__test__/better-sqlite3.spec.mjs @@ -1,3 +1,6 @@ +import crypto from "crypto"; +import crypto from "crypto"; +import crypto from 'crypto'; import fs from "node:fs"; import { fileURLToPath } from "url"; import path from "node:path" @@ -27,6 +30,18 @@ new DualTest("foobar.db", { readonly: true }) t.is(db.readonly, true); }); +const genDatabaseFilename = () => { + return `test-${crypto.randomBytes(8).toString('hex')}.db`; +}; + +new DualTest().onlySqlitePasses("opening a read-only database fails if the file doesn't exist", async (t) => { + t.throws(() => t.context.connect(genDatabaseFilename(), { readonly: true }), + { + any: true, + code: 'SQLITE_CANTOPEN', + }); +}) + foobarTest.both("Property .readonly of database if not set", async (t) => { const db = t.context.db; t.is(db.readonly, false);