interface Deno.DenoTest
(t: TestDefinition): void
Register a test which will be run when `deno test` is used on the command
line and the containing module looks like a test module.
`fn` can be async if required.
```ts
import { assertEquals } from "jsr:@std/assert";
Deno.test({
name: "example test",
fn() {
assertEquals("world", "world");
},
});
Deno.test({
name: "example ignored test",
ignore: Deno.build.os === "windows",
fn() {
// This test is ignored only on Windows machines
},
});
Deno.test({
name: "example async test",
async fn() {
const decoder = new TextDecoder("utf-8");
const data = await Deno.readFile("hello_world.txt");
assertEquals(decoder.decode(data), "Hello world");
}
});
```
(name: string,fn: (t: TestContext) => void | Promise<void>,): void
Register a test which will be run when `deno test` is used on the command
line and the containing module looks like a test module.
`fn` can be async if required.
```ts
import { assertEquals } from "jsr:@std/assert";
Deno.test("My test description", () => {
assertEquals("hello", "hello");
});
Deno.test("My async test description", async () => {
const decoder = new TextDecoder("utf-8");
const data = await Deno.readFile("hello_world.txt");
assertEquals(decoder.decode(data), "Hello world");
});
```
(fn: (t: TestContext) => void | Promise<void>): void
Register a test which will be run when `deno test` is used on the command
line and the containing module looks like a test module.
`fn` can be async if required. Declared function must have a name.
```ts
import { assertEquals } from "jsr:@std/assert";
Deno.test(function myTestName() {
assertEquals("hello", "hello");
});
Deno.test(async function myOtherTestName() {
const decoder = new TextDecoder("utf-8");
const data = await Deno.readFile("hello_world.txt");
assertEquals(decoder.decode(data), "Hello world");
});
```
(name: string,options: Omit<TestDefinition, "fn" | "name">,fn: (t: TestContext) => void | Promise<void>,): void
Register a test which will be run when `deno test` is used on the command
line and the containing module looks like a test module.
`fn` can be async if required.
```ts
import { assert, fail, assertEquals } from "jsr:@std/assert";
Deno.test("My test description", { permissions: { read: true } }, (): void => {
assertEquals("hello", "hello");
});
Deno.test("My async test description", { permissions: { read: false } }, async (): Promise => {
const decoder = new TextDecoder("utf-8");
const data = await Deno.readFile("hello_world.txt");
assertEquals(decoder.decode(data), "Hello world");
});
```
(options: Omit<TestDefinition, "fn" | "name">,fn: (t: TestContext) => void | Promise<void>,): void
Register a test which will be run when `deno test` is used on the command
line and the containing module looks like a test module.
`fn` can be async if required.
```ts
import { assertEquals } from "jsr:@std/assert";
Deno.test(
{
name: "My test description",
permissions: { read: true },
},
() => {
assertEquals("hello", "hello");
},
);
Deno.test(
{
name: "My async test description",
permissions: { read: false },
},
async () => {
const decoder = new TextDecoder("utf-8");
const data = await Deno.readFile("hello_world.txt");
assertEquals(decoder.decode(data), "Hello world");
},
);
```
(options: Omit<TestDefinition, "fn">,fn: (t: TestContext) => void | Promise<void>,): void
Register a test which will be run when `deno test` is used on the command
line and the containing module looks like a test module.
`fn` can be async if required. Declared function must have a name.
```ts
import { assertEquals } from "jsr:@std/assert";
Deno.test(
{ permissions: { read: true } },
function myTestName() {
assertEquals("hello", "hello");
},
);
Deno.test(
{ permissions: { read: false } },
async function myOtherTestName() {
const decoder = new TextDecoder("utf-8");
const data = await Deno.readFile("hello_world.txt");
assertEquals(decoder.decode(data), "Hello world");
},
);
```
ignore(t: Omit<TestDefinition, "ignore">): void
Shorthand property for ignoring a particular test case.
ignore(name: string,fn: (t: TestContext) => void | Promise<void>,): void
Shorthand property for ignoring a particular test case.
ignore(fn: (t: TestContext) => void | Promise<void>): void
Shorthand property for ignoring a particular test case.
ignore(name: string,options: Omit<TestDefinition, "fn"
| "name"
| "ignore">,fn: (t: TestContext) => void | Promise<void>,): void
Shorthand property for ignoring a particular test case.
ignore(options: Omit<TestDefinition, "fn"
| "name"
| "ignore">,fn: (t: TestContext) => void | Promise<void>,): void
Shorthand property for ignoring a particular test case.
ignore(options: Omit<TestDefinition, "fn" | "ignore">,fn: (t: TestContext) => void | Promise<void>,): void
Shorthand property for ignoring a particular test case.
only(t: Omit<TestDefinition, "only">): void
Shorthand property for focusing a particular test case.
only(name: string,fn: (t: TestContext) => void | Promise<void>,): void
Shorthand property for focusing a particular test case.
only(fn: (t: TestContext) => void | Promise<void>): void
Shorthand property for focusing a particular test case.
only(name: string,options: Omit<TestDefinition, "fn"
| "name"
| "only">,fn: (t: TestContext) => void | Promise<void>,): void
Shorthand property for focusing a particular test case.
only(options: Omit<TestDefinition, "fn"
| "name"
| "only">,fn: (t: TestContext) => void | Promise<void>,): void
Shorthand property for focusing a particular test case.
only(options: Omit<TestDefinition, "fn" | "only">,fn: (t: TestContext) => void | Promise<void>,): void
Shorthand property for focusing a particular test case.