Skip to main content

Class: TimeSkippingWorkflowClient

testing.TimeSkippingWorkflowClient

A client with the exact same API as the "normal" client with 1 exception, When this client waits on a Workflow's result, it will enable time skipping in the test server.

Hierarchy

Constructors

constructor

new TimeSkippingWorkflowClient(options)

Parameters

NameType
optionsTimeSkippingWorkflowClientOptions

Overrides

WorkflowClient.constructor

Properties

connection

Readonly connection: ConnectionLike

Inherited from

WorkflowClient.connection


options

Readonly options: LoadedWorkflowClientOptions

Inherited from

WorkflowClient.options

Accessors

workflowService

get workflowService(): WorkflowService

Raw gRPC access to the Temporal service.

NOTE: The namespace provided in options is not automatically set on requests made via this service object.

Returns

WorkflowService

Inherited from

WorkflowClient.workflowService

Methods

execute

execute<T>(workflowTypeOrFunc, options): Promise<WorkflowResultType<T>>

Starts a new Workflow execution and awaits its completion.

Type parameters

NameType
Textends Workflow

Parameters

NameType
workflowTypeOrFuncstring | T
optionsWorkflowStartOptions<T>

Returns

Promise<WorkflowResultType<T>>

the result of the Workflow execution

Inherited from

WorkflowClient.execute


getHandle

getHandle<T>(workflowId, runId?, options?): WorkflowHandle<T>

Create a handle to an existing Workflow.

  • If only workflowId is passed, and there are multiple Workflow Executions with that ID, the handle will refer to the most recent one.
  • If workflowId and runId are passed, the handle will refer to the specific Workflow Execution with that Run ID.
  • If workflowId and GetWorkflowHandleOptions.firstExecutionRunId are passed, the handle will refer to the most recent Workflow Execution in the Chain that started with firstExecutionRunId.

A Chain is a series of Workflow Executions that share the same Workflow ID and are connected by:

This method does not validate workflowId. If there is no Workflow Execution with the given workflowId, handle methods like handle.describe() will throw a WorkflowNotFoundError error.

Type parameters

NameType
Textends Workflow

Parameters

NameType
workflowIdstring
runId?string
options?GetWorkflowHandleOptions

Returns

WorkflowHandle<T>

Inherited from

WorkflowClient.getHandle


result

result<T>(workflowId, runId?, opts?): Promise<T>

Gets the result of a Workflow execution.

See

WorkflowClient.result

Type parameters

Name
T

Parameters

NameType
workflowIdstring
runId?string
opts?WorkflowResultOptions

Returns

Promise<T>

Overrides

WorkflowClient.result


signalWithStart

signalWithStart<WorkflowFn, SignalArgs>(workflowTypeOrFunc, options): Promise<WorkflowHandleWithSignaledRunId<WorkflowFn>>

Sends a Signal to a running Workflow or starts a new one if not already running and immediately Signals it. Useful when you're unsure whether the Workflow has been started.

Type parameters

NameType
WorkflowFnextends Workflow
SignalArgsextends any[] = []

Parameters

NameType
workflowTypeOrFuncstring | WorkflowFn
optionsWithWorkflowArgs<WorkflowFn, WorkflowSignalWithStartOptions<SignalArgs>>

Returns

Promise<WorkflowHandleWithSignaledRunId<WorkflowFn>>

a WorkflowHandle to the started Workflow

Inherited from

WorkflowClient.signalWithStart


start

start<T>(workflowTypeOrFunc, options): Promise<WorkflowHandleWithFirstExecutionRunId<T>>

Start a new Workflow execution.

Type parameters

NameType
Textends Workflow

Parameters

NameType
workflowTypeOrFuncstring | T
optionsWorkflowStartOptions<T>

Returns

Promise<WorkflowHandleWithFirstExecutionRunId<T>>

a WorkflowHandle to the started Workflow

Inherited from

WorkflowClient.start


withDeadline

withDeadline<R>(deadline, fn): Promise<R>

Set the deadline for any service requests executed in fn's scope.

Type parameters

Name
R

Parameters

NameType
deadlinenumber | Date
fn() => Promise<R>

Returns

Promise<R>

Inherited from

WorkflowClient.withDeadline


withMetadata

withMetadata<R>(metadata, fn): Promise<R>

Set metadata for any service requests executed in fn's scope.

See

Connection.withMetadata

Type parameters

Name
R

Parameters

NameType
metadataMetadata
fn() => Promise<R>

Returns

Promise<R>

returned value of fn

Inherited from

WorkflowClient.withMetadata