test: playwright cloud import prisma (#9677)

This commit is contained in:
forehalo
2025-01-14 09:31:23 +00:00
parent 8e07753b51
commit e418465c0c

View File

@@ -1,3 +1,5 @@
import { createRequire } from 'node:module';
import { openHomePage } from '@affine-test/kit/utils/load-page'; import { openHomePage } from '@affine-test/kit/utils/load-page';
import { import {
clickNewPageButton, clickNewPageButton,
@@ -5,6 +7,7 @@ import {
waitForEditorLoad, waitForEditorLoad,
} from '@affine-test/kit/utils/page-logic'; } from '@affine-test/kit/utils/page-logic';
import { clickSideBarSettingButton } from '@affine-test/kit/utils/sidebar'; import { clickSideBarSettingButton } from '@affine-test/kit/utils/sidebar';
import { Package } from '@affine-tools/utils/workspace';
import { faker } from '@faker-js/faker'; import { faker } from '@faker-js/faker';
import { hash } from '@node-rs/argon2'; import { hash } from '@node-rs/argon2';
import type { BrowserContext, Cookie, Page } from '@playwright/test'; import type { BrowserContext, Cookie, Page } from '@playwright/test';
@@ -50,6 +53,9 @@ const cloudUserSchema = z.object({
password: z.string(), password: z.string(),
}); });
const server = new Package('@affine/server');
const require = createRequire(server.srcPath.join('index.ts').toFileUrl());
export const runPrisma = async <T>( export const runPrisma = async <T>(
cb: ( cb: (
prisma: InstanceType< prisma: InstanceType<
@@ -58,12 +64,7 @@ export const runPrisma = async <T>(
> >
) => Promise<T> ) => Promise<T>
): Promise<T> => { ): Promise<T> => {
const { const { PrismaClient } = require('@prisma/client');
PrismaClient,
// oxlint-disable-next-line @typescript-eslint/consistent-type-imports
} = await import(
'../../../../packages/backend/server/node_modules/@prisma/client'
);
const client = new PrismaClient({ const client = new PrismaClient({
datasourceUrl: datasourceUrl:
process.env.DATABASE_URL || process.env.DATABASE_URL ||