Interface ItDefinition<T>

The options for creating an individual test case with the it function.

interface ItDefinition<T> {
    fn: ((this: T, t: TestContext) => void | Promise<void>);
    ignore?: boolean;
    name: string;
    only?: boolean;
    permissions?: PermissionOptions;
    sanitizeExit?: boolean;
    sanitizeOps?: boolean;
    sanitizeResources?: boolean;
    suite?: TestSuite<T>;
}

Type Parameters

  • T
Hierarchy
  • Omit<Deno.TestDefinition, "fn">
    • ItDefinition

Properties

fn: ((this: T, t: TestContext) => void | Promise<void>)

The body of the test case

ignore?: boolean

If truthy the current test step will be ignored.

It is a quick way to skip over a step, but also can be used for conditional logic, like determining if an environment feature is present.

name: string

The name of the test.

only?: boolean

If at least one test has only set to true, only run tests that have only set to true and fail the test suite.

permissions?: PermissionOptions

Specifies the permissions that should be used to run the test.

Set this to "inherit" to keep the calling runtime permissions, set this to "none" to revoke all permissions, or set a more specific set of permissions using a PermissionOptionsObject.

{"inherit"}
sanitizeExit?: boolean

Ensure the test case does not prematurely cause the process to exit, for example via a call to Deno.exit.

{true}
sanitizeOps?: boolean

Check that the number of async completed operations after the test step is the same as number of dispatched operations. This ensures that the code tested does not start async operations which it then does not await. This helps in preventing logic errors and memory leaks in the application code.

{true}
sanitizeResources?: boolean

Ensure the test step does not "leak" resources - like open files or network connections - by ensuring the open resources at the start of the test match the open resources at the end of the test.

{true}
suite?: TestSuite<T>

The describe function returns a TestSuite representing the group of tests. If it is called within a describe calls fn, the suite will default to that parent describe calls returned TestSuite. If it is not called within a describe calls fn, the suite will default to the TestSuite representing the global group of tests.