aboutsummaryrefslogtreecommitdiffstats
path: root/packages/db/drizzle.ts
diff options
context:
space:
mode:
authorMohamedBassem <me@mbassem.com>2024-02-28 15:43:32 +0000
committerMohamedBassem <me@mbassem.com>2024-02-28 15:43:32 +0000
commitf67ae821230da9bc92a3c9ff6c550a36d48c0ee9 (patch)
tree75ff0d4e07bd066d3acc7e7cfa6ef126ea0eebc7 /packages/db/drizzle.ts
parent0f0e7ca8d134c2cfc02ac62539ad10c811319b38 (diff)
downloadkarakeep-f67ae821230da9bc92a3c9ff6c550a36d48c0ee9.tar.zst
tests: Add tests for the bookmarks routes
Diffstat (limited to 'packages/db/drizzle.ts')
-rw-r--r--packages/db/drizzle.ts11
1 files changed, 11 insertions, 0 deletions
diff --git a/packages/db/drizzle.ts b/packages/db/drizzle.ts
index def1fc0a..adfe4884 100644
--- a/packages/db/drizzle.ts
+++ b/packages/db/drizzle.ts
@@ -2,6 +2,17 @@ import "dotenv/config";
import { drizzle } from "drizzle-orm/better-sqlite3";
import Database from "better-sqlite3";
import * as schema from "./schema";
+import { migrate } from "drizzle-orm/better-sqlite3/migrator";
+import path from "path";
const sqlite = new Database(process.env.DATABASE_URL);
export const db = drizzle(sqlite, { schema, logger: true });
+
+export function getInMemoryDB(runMigrations: boolean) {
+ const mem = new Database(":memory:");
+ const db = drizzle(mem, { schema, logger: true });
+ if (runMigrations) {
+ migrate(db, { migrationsFolder: path.resolve(__dirname, "./drizzle") });
+ }
+ return db;
+}