Merge branch 'worktree-agent-a9a8b0dc' into Develop
# Conflicts: # .planning/REQUIREMENTS.md # .planning/ROADMAP.md # .planning/STATE.md # drizzle-pg/meta/0000_snapshot.json # drizzle-pg/meta/_journal.json # src/db/schema.ts # src/db/seed.ts # src/server/middleware/auth.ts # src/server/services/auth.service.ts # src/server/services/category.service.ts # src/server/services/oauth.service.ts # tests/helpers/db.ts
This commit is contained in:
@@ -1,17 +1,40 @@
|
||||
import { PGlite } from "@electric-sql/pglite";
|
||||
import { drizzle } from "drizzle-orm/pglite";
|
||||
import { migrate } from "drizzle-orm/pglite/migrator";
|
||||
import * as schema from "../../src/db/schema.ts";
|
||||
|
||||
export async function createTestDb() {
|
||||
const db = drizzle({ schema });
|
||||
type Db = ReturnType<typeof drizzle<typeof schema>>;
|
||||
|
||||
// Apply migrations from the new PostgreSQL migration directory
|
||||
export async function createTestDb() {
|
||||
const client = new PGlite();
|
||||
const db = drizzle(client, { schema });
|
||||
|
||||
// Apply all migrations to create tables
|
||||
await migrate(db, { migrationsFolder: "./drizzle-pg" });
|
||||
|
||||
// Seed default Uncategorized category
|
||||
// Seed a test user
|
||||
const [user] = await db
|
||||
.insert(schema.users)
|
||||
.values({ logtoSub: "test-user-sub" })
|
||||
.returning();
|
||||
|
||||
// Seed per-user Uncategorized category
|
||||
await db
|
||||
.insert(schema.categories)
|
||||
.values({ name: "Uncategorized", icon: "package" });
|
||||
.values({ name: "Uncategorized", icon: "package", userId: user.id });
|
||||
|
||||
return db;
|
||||
return { db, userId: user.id };
|
||||
}
|
||||
|
||||
export async function createSecondTestUser(db: Db) {
|
||||
const [user] = await db
|
||||
.insert(schema.users)
|
||||
.values({ logtoSub: "test-user-2-sub" })
|
||||
.returning();
|
||||
|
||||
await db
|
||||
.insert(schema.categories)
|
||||
.values({ name: "Uncategorized", icon: "package", userId: user.id });
|
||||
|
||||
return user.id;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user