[API reference](https://evolu.dev/docs/api-reference) › [@evolu/common](https://evolu.dev/docs/api-reference/common) › [Task](https://evolu.dev/docs/api-reference/common/Task) › testCreateRun

## Call Signature

```ts
function testCreateRun(
  deps?: TestRunDefaultDeps,
): DisposableRun<TestRunDefaultDeps>;
```

Defined in: [packages/common/src/Task.ts:2364](https://github.com/evoluhq/evolu/blob/037c390af081e9944d616ff298a729515c5c5ab7/packages/common/src/Task.ts#L2364)

Creates a root [DisposableRun](https://evolu.dev/docs/api-reference/common/Task/interfaces/DisposableRun) with [TestRunDefaultDeps](https://evolu.dev/docs/api-reference/common/Task/type-aliases/TestRunDefaultDeps).

### Example

```ts

const readTime: Task<number> = (run) => ok(run.deps.time.now());

await using run = testCreateRun();
assertOk(await run(readTime), 0);
```

## Call Signature

```ts
function testCreateRun<D>(
  deps: RunCustomDeps<D>,
): DisposableRun<
  Omit<RunDefaultDeps, "time" | "console" | "leakDetector" | "reportDefect"> &
    TestConsoleDep &
    TestLeakDetectorDep &
    TestReportDefectDep &
    TestTimeDep &
    RandomLibDep &
    D
>;
```

Defined in: [packages/common/src/Task.ts:2387](https://github.com/evoluhq/evolu/blob/037c390af081e9944d616ff298a729515c5c5ab7/packages/common/src/Task.ts#L2387)

Merges custom dependencies into [TestRunDefaultDeps](https://evolu.dev/docs/api-reference/common/Task/type-aliases/TestRunDefaultDeps).

### Example

```ts

interface FeatureDep {
  readonly feature: { readonly enabled: boolean };
}

const isFeatureEnabled: Task<boolean, never, FeatureDep> = (run) =>
  ok(run.deps.feature.enabled);

await using run = testCreateRun({ feature: { enabled: true } });
assertOk(await run(isFeatureEnabled), true);
```