You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
886 B
31 lines
886 B
import { describe, expect, it } from "vitest";
|
|
import { fail, ok } from "@/lib/response";
|
|
|
|
describe("lib/response", () => {
|
|
it("ok 返回 code=0、message=ok、data", async () => {
|
|
const res = ok({ quote_id: "Q001" });
|
|
const body = await res.json();
|
|
|
|
expect(res.status).toBe(200);
|
|
expect(body).toEqual({
|
|
code: 0,
|
|
message: "ok",
|
|
data: { quote_id: "Q001" },
|
|
});
|
|
expect(res.headers.get("Cache-Control")).toBe("no-store");
|
|
});
|
|
|
|
it("fail 返回 error code、message、data=null 及 HTTP 状态码", async () => {
|
|
const res = fail("VALIDATION_FAILED", "请填写重量", 400);
|
|
const body = await res.json();
|
|
|
|
expect(res.status).toBe(400);
|
|
expect(body).toEqual({
|
|
code: "VALIDATION_FAILED",
|
|
message: "请填写重量",
|
|
data: null,
|
|
});
|
|
expect(res.headers.get("Cache-Control")).toBe("no-store");
|
|
});
|
|
});
|