完善 CI 质量门禁并启用覆盖率阈值
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
import { describe, it, expect, vi, beforeEach } from "vitest";
|
||||
import { render, screen } from "@testing-library/react";
|
||||
import { render, screen, waitFor } from "@testing-library/react";
|
||||
import React from "react";
|
||||
import { ToastContext, type ToastContextValue } from "@/hooks/useToast";
|
||||
|
||||
@@ -40,19 +40,23 @@ beforeEach(() => {
|
||||
});
|
||||
|
||||
describe("BlindboxPage", () => {
|
||||
it("renders page heading", () => {
|
||||
it("renders page heading", async () => {
|
||||
renderPage();
|
||||
expect(screen.getByText("周末契约")).toBeInTheDocument();
|
||||
expect(await screen.findByText("周末契约")).toBeInTheDocument();
|
||||
await waitFor(() => {
|
||||
expect(mockFetch).toHaveBeenCalled();
|
||||
});
|
||||
});
|
||||
|
||||
it("renders back button", () => {
|
||||
it("renders back button", async () => {
|
||||
renderPage();
|
||||
await screen.findByText("周末契约");
|
||||
const backBtns = screen.getAllByRole("button");
|
||||
expect(backBtns.length).toBeGreaterThan(0);
|
||||
});
|
||||
|
||||
it("renders subtitle text", () => {
|
||||
it("renders subtitle text", async () => {
|
||||
renderPage();
|
||||
expect(screen.getByText("ADVENTURE ROULETTE")).toBeInTheDocument();
|
||||
expect(await screen.findByText("ADVENTURE ROULETTE")).toBeInTheDocument();
|
||||
});
|
||||
});
|
||||
|
||||
@@ -70,9 +70,14 @@ beforeEach(() => {
|
||||
});
|
||||
|
||||
describe("ProfilePage", () => {
|
||||
it("renders profile heading", () => {
|
||||
it("renders profile heading", async () => {
|
||||
renderPage();
|
||||
expect(screen.getByText("个人中心")).toBeInTheDocument();
|
||||
expect(await screen.findByText("个人中心")).toBeInTheDocument();
|
||||
await waitFor(() => {
|
||||
expect(mockFetch).toHaveBeenCalledWith(
|
||||
"/api/user?id=user-1",
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
it("fetches user profile data with correct URL", async () => {
|
||||
@@ -91,8 +96,13 @@ describe("ProfilePage", () => {
|
||||
});
|
||||
});
|
||||
|
||||
it("renders navigation element", () => {
|
||||
it("renders navigation element", async () => {
|
||||
renderPage();
|
||||
await waitFor(() => {
|
||||
expect(mockFetch).toHaveBeenCalledWith(
|
||||
"/api/user?id=user-1",
|
||||
);
|
||||
});
|
||||
expect(screen.getByRole("navigation")).toBeInTheDocument();
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user