mirror of
https://github.com/Since-3/Kuma.git
synced 2026-10-12 21:41:17 +00:00
fix tests
This commit is contained in:
parent
25ac296917
commit
b52849ecbd
4 changed files with 27 additions and 17 deletions
|
|
@ -1,4 +1 @@
|
||||||
#!/usr/bin/env sh
|
|
||||||
. "$(dirname -- "$0")/_/husky.sh"
|
|
||||||
|
|
||||||
npx lint-staged
|
npx lint-staged
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1 @@
|
||||||
#!/usr/bin/env sh
|
|
||||||
. "$(dirname -- "$0")/_/husky.sh"
|
|
||||||
|
|
||||||
npm run test:run
|
npm run test:run
|
||||||
|
|
|
||||||
|
|
@ -7,8 +7,8 @@ vi.mock("@/src/lib/supabase/server", () => ({
|
||||||
|
|
||||||
vi.mock("@/src/lib/prisma", () => ({
|
vi.mock("@/src/lib/prisma", () => ({
|
||||||
prisma: {
|
prisma: {
|
||||||
manager: { findUnique: vi.fn() },
|
manager: { findFirst: vi.fn() },
|
||||||
user: { findUnique: vi.fn(), create: vi.fn() },
|
user: { findFirst: vi.fn(), create: vi.fn() },
|
||||||
},
|
},
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
|
@ -20,8 +20,8 @@ const mockSupabase = { auth: { signUp: mockSignUp } };
|
||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
vi.mocked(createClient).mockResolvedValue(mockSupabase as never);
|
vi.mocked(createClient).mockResolvedValue(mockSupabase as never);
|
||||||
vi.mocked(prisma.manager.findUnique).mockReset();
|
vi.mocked(prisma.manager.findFirst).mockReset();
|
||||||
vi.mocked(prisma.user.findUnique).mockReset();
|
vi.mocked(prisma.user.findFirst).mockReset();
|
||||||
vi.mocked(prisma.user.create).mockReset();
|
vi.mocked(prisma.user.create).mockReset();
|
||||||
mockSignUp.mockReset();
|
mockSignUp.mockReset();
|
||||||
});
|
});
|
||||||
|
|
@ -53,7 +53,7 @@ describe("POST /api/auth/register", () => {
|
||||||
});
|
});
|
||||||
|
|
||||||
it("gibt 409 zurück wenn E-Mail bereits als Manager existiert", async () => {
|
it("gibt 409 zurück wenn E-Mail bereits als Manager existiert", async () => {
|
||||||
vi.mocked(prisma.manager.findUnique).mockResolvedValue({
|
vi.mocked(prisma.manager.findFirst).mockResolvedValue({
|
||||||
id: "m-1",
|
id: "m-1",
|
||||||
email: validBody.email,
|
email: validBody.email,
|
||||||
} as never);
|
} as never);
|
||||||
|
|
@ -65,8 +65,8 @@ describe("POST /api/auth/register", () => {
|
||||||
});
|
});
|
||||||
|
|
||||||
it("gibt 409 zurück wenn User bereits existiert", async () => {
|
it("gibt 409 zurück wenn User bereits existiert", async () => {
|
||||||
vi.mocked(prisma.manager.findUnique).mockResolvedValue(null);
|
vi.mocked(prisma.manager.findFirst).mockResolvedValue(null);
|
||||||
vi.mocked(prisma.user.findUnique).mockResolvedValue({
|
vi.mocked(prisma.user.findFirst).mockResolvedValue({
|
||||||
id: "u-1",
|
id: "u-1",
|
||||||
email: validBody.email,
|
email: validBody.email,
|
||||||
} as never);
|
} as never);
|
||||||
|
|
@ -78,8 +78,8 @@ describe("POST /api/auth/register", () => {
|
||||||
});
|
});
|
||||||
|
|
||||||
it("gibt 400 zurück bei Supabase-Auth-Fehler", async () => {
|
it("gibt 400 zurück bei Supabase-Auth-Fehler", async () => {
|
||||||
vi.mocked(prisma.manager.findUnique).mockResolvedValue(null);
|
vi.mocked(prisma.manager.findFirst).mockResolvedValue(null);
|
||||||
vi.mocked(prisma.user.findUnique).mockResolvedValue(null);
|
vi.mocked(prisma.user.findFirst).mockResolvedValue(null);
|
||||||
mockSignUp.mockResolvedValue({
|
mockSignUp.mockResolvedValue({
|
||||||
data: { user: null },
|
data: { user: null },
|
||||||
error: { message: "Email rate limit exceeded" },
|
error: { message: "Email rate limit exceeded" },
|
||||||
|
|
@ -93,8 +93,8 @@ describe("POST /api/auth/register", () => {
|
||||||
const fakeUser = { id: "new-1" };
|
const fakeUser = { id: "new-1" };
|
||||||
const createdUser = { id: "new-1", email: validBody.email, name: validBody.name };
|
const createdUser = { id: "new-1", email: validBody.email, name: validBody.name };
|
||||||
|
|
||||||
vi.mocked(prisma.manager.findUnique).mockResolvedValue(null);
|
vi.mocked(prisma.manager.findFirst).mockResolvedValue(null);
|
||||||
vi.mocked(prisma.user.findUnique).mockResolvedValue(null);
|
vi.mocked(prisma.user.findFirst).mockResolvedValue(null);
|
||||||
mockSignUp.mockResolvedValue({ data: { user: fakeUser }, error: null });
|
mockSignUp.mockResolvedValue({ data: { user: fakeUser }, error: null });
|
||||||
vi.mocked(prisma.user.create).mockResolvedValue(createdUser as never);
|
vi.mocked(prisma.user.create).mockResolvedValue(createdUser as never);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,22 @@
|
||||||
import { http, HttpResponse } from "msw";
|
import { http, HttpResponse } from "msw";
|
||||||
|
|
||||||
export const handlers = [
|
export const handlers = [
|
||||||
|
// Adressverifikation (verifyAddressExists) ruft Nominatim per echtem fetch auf.
|
||||||
|
// Standard-Handler liefert immer einen Treffer, damit Tests, die sich nicht
|
||||||
|
// gezielt mit Adressvalidierung befassen, nicht daran scheitern.
|
||||||
|
http.get("https://nominatim.openstreetmap.org/search", () => {
|
||||||
|
return HttpResponse.json([
|
||||||
|
{
|
||||||
|
address: {
|
||||||
|
road: "Musterstraße",
|
||||||
|
house_number: "1",
|
||||||
|
postcode: "10115",
|
||||||
|
city: "Berlin",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
]);
|
||||||
|
}),
|
||||||
|
|
||||||
http.post("http://localhost/api/auth/login", async ({ request }) => {
|
http.post("http://localhost/api/auth/login", async ({ request }) => {
|
||||||
const body = (await request.json()) as Record<string, unknown>;
|
const body = (await request.json()) as Record<string, unknown>;
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue