mirror of
https://github.com/denoland/deno.git
synced 2025-09-26 20:29:11 +00:00

Some checks are pending
ci / pre-build (push) Waiting to run
ci / test debug linux-aarch64 (push) Blocked by required conditions
ci / test release linux-aarch64 (push) Blocked by required conditions
ci / test debug macos-aarch64 (push) Blocked by required conditions
ci / test release macos-aarch64 (push) Blocked by required conditions
ci / bench release linux-x86_64 (push) Blocked by required conditions
ci / lint debug linux-x86_64 (push) Blocked by required conditions
ci / lint debug macos-x86_64 (push) Blocked by required conditions
ci / lint debug windows-x86_64 (push) Blocked by required conditions
ci / test debug linux-x86_64 (push) Blocked by required conditions
ci / test release linux-x86_64 (push) Blocked by required conditions
ci / test debug macos-x86_64 (push) Blocked by required conditions
ci / test release macos-x86_64 (push) Blocked by required conditions
ci / test debug windows-x86_64 (push) Blocked by required conditions
ci / test release windows-x86_64 (push) Blocked by required conditions
ci / build libs (push) Blocked by required conditions
ci / publish canary (push) Blocked by required conditions
This commit adds `Deno.test.beforeAll`, `Deno.test.beforeEach`, `Deno.test.afterAll` and `Deno.test.afterEach` APIs. These APIs can be used to perform setup and teardown for test cases. The API is similar to the Vitest API: https://vitest.dev/api/#setup-and-teardown, with the main difference being that that `before*` hooks don't return a cleanup function.
56 lines
896 B
TypeScript
56 lines
896 B
TypeScript
const logs: string[] = [];
|
|
|
|
Deno.test.beforeAll(() => {
|
|
logs.push("beforeAll 1");
|
|
});
|
|
|
|
Deno.test.beforeAll(() => {
|
|
logs.push("beforeAll 2");
|
|
});
|
|
|
|
Deno.test.beforeAll(() => {
|
|
logs.push("beforeAll 3");
|
|
});
|
|
|
|
// Multiple beforeEach hooks
|
|
Deno.test.beforeEach(() => {
|
|
logs.push("beforeEach 1");
|
|
});
|
|
|
|
Deno.test.beforeEach(() => {
|
|
logs.push("beforeEach 2");
|
|
});
|
|
|
|
// Multiple afterEach hooks
|
|
Deno.test.afterEach(() => {
|
|
logs.push("afterEach 1");
|
|
});
|
|
|
|
Deno.test.afterEach(() => {
|
|
logs.push("afterEach 2");
|
|
});
|
|
|
|
// Multiple afterAll hooks
|
|
Deno.test.afterAll(() => {
|
|
logs.push("afterAll 1");
|
|
});
|
|
|
|
Deno.test.afterAll(() => {
|
|
logs.push("afterAll 2");
|
|
});
|
|
|
|
Deno.test("first test", () => {
|
|
logs.push("test 1");
|
|
});
|
|
|
|
Deno.test("second test", () => {
|
|
logs.push("test 2");
|
|
});
|
|
|
|
Deno.test("third test", () => {
|
|
logs.push("test 3");
|
|
});
|
|
|
|
globalThis.onunload = () => {
|
|
console.log(logs);
|
|
};
|