@temporalio/testing 1.8.6 → 1.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"assert-to-failure-interceptor.js","sourceRoot":"","sources":["../src/assert-to-failure-interceptor.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAC5B,mDAAgF;AAEhF;;;;GAIG;AACH,SAAgB,YAAY;IAC1B,OAAO;QACL,OAAO,EAAE;YACP;gBACE,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI;oBAC5B,IAAI;wBACF,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC;qBAC1B;oBAAC,OAAO,GAAG,EAAE;wBACZ,IAAI,GAAG,YAAY,gBAAM,CAAC,cAAc,EAAE;4BACxC,MAAM,MAAM,GAAG,6BAAkB,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;4BAC5D,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;4BACzB,MAAM,MAAM,CAAC;yBACd;wBACD,MAAM,GAAG,CAAC;qBACX;gBACH,CAAC;gBACD,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI;oBACvB,IAAI;wBACF,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC;qBAC1B;oBAAC,OAAO,GAAG,EAAE;wBACZ,IAAI,GAAG,YAAY,gBAAM,CAAC,cAAc,EAAE;4BACxC,MAAM,MAAM,GAAG,6BAAkB,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;4BAC5D,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;4BACzB,MAAM,MAAM,CAAC;yBACd;wBACD,MAAM,GAAG,CAAC;qBACX;gBACH,CAAC;aACF;SACF;KACF,CAAC;AACJ,CAAC;AA/BD,oCA+BC"}
1
+ {"version":3,"file":"assert-to-failure-interceptor.js","sourceRoot":"","sources":["../src/assert-to-failure-interceptor.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAC5B,mDAAgF;AAEhF;;;;GAIG;AACH,SAAgB,YAAY;IAC1B,OAAO;QACL,OAAO,EAAE;YACP;gBACE,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI;oBAC5B,IAAI,CAAC;wBACH,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC3B,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,IAAI,GAAG,YAAY,gBAAM,CAAC,cAAc,EAAE,CAAC;4BACzC,MAAM,MAAM,GAAG,6BAAkB,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;4BAC5D,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;4BACzB,MAAM,MAAM,CAAC;wBACf,CAAC;wBACD,MAAM,GAAG,CAAC;oBACZ,CAAC;gBACH,CAAC;gBACD,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI;oBACvB,IAAI,CAAC;wBACH,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC3B,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,IAAI,GAAG,YAAY,gBAAM,CAAC,cAAc,EAAE,CAAC;4BACzC,MAAM,MAAM,GAAG,6BAAkB,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;4BAC5D,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;4BACzB,MAAM,MAAM,CAAC;wBACf,CAAC;wBACD,MAAM,GAAG,CAAC;oBACZ,CAAC;gBACH,CAAC;aACF;SACF;KACF,CAAC;AACJ,CAAC;AA/BD,oCA+BC"}
package/lib/index.d.ts CHANGED
@@ -13,7 +13,7 @@ import events from 'node:events';
13
13
  import * as activity from '@temporalio/activity';
14
14
  import { AsyncCompletionClient, Client, ClientOptions, WorkflowClient, WorkflowClientOptions, WorkflowResultOptions } from '@temporalio/client';
15
15
  import { ActivityFunction, Duration } from '@temporalio/common';
16
- import { NativeConnection } from '@temporalio/worker';
16
+ import { ActivityInterceptorsFactory, NativeConnection } from '@temporalio/worker';
17
17
  import { EphemeralServer, EphemeralServerConfig, DevServerConfig, TimeSkippingServerConfig } from '@temporalio/core-bridge';
18
18
  import { Connection, TestService } from './connection';
19
19
  export { TimeSkippingServerConfig, DevServerConfig, EphemeralServerExecutable } from '@temporalio/core-bridge';
@@ -214,6 +214,9 @@ export declare class TestWorkflowEnvironment {
214
214
  */
215
215
  currentTimeMs(): Promise<number>;
216
216
  }
217
+ export interface MockActivityEnvironmentOptions {
218
+ interceptors?: ActivityInterceptorsFactory[];
219
+ }
217
220
  /**
218
221
  * Used as the default activity info for Activities executed in the {@link MockActivityEnvironment}
219
222
  */
@@ -221,13 +224,17 @@ export declare const defaultActivityInfo: activity.Info;
221
224
  /**
222
225
  * An execution environment for testing Activities.
223
226
  *
224
- * Mocks Activity {@link Context | activity.Context} and exposes hooks for
225
- * cancellation and heartbeats.
227
+ * Mocks Activity {@link Context | activity.Context} and exposes hooks for cancellation and heartbeats.
228
+ *
229
+ * Note that the `Context` object used by this environment will be reused for all activities that are run in this
230
+ * environment. Consequently, once `cancel()` is called, any further activity that gets executed in this environment
231
+ * will immediately be in a cancelled state.
226
232
  */
227
233
  export declare class MockActivityEnvironment extends events.EventEmitter {
228
234
  cancel: (reason?: any) => void;
229
235
  readonly context: activity.Context;
230
- constructor(info?: Partial<activity.Info>);
236
+ private readonly activity;
237
+ constructor(info?: Partial<activity.Info>, opts?: MockActivityEnvironmentOptions);
231
238
  /**
232
239
  * Run a function in Activity Context
233
240
  */
package/lib/index.js CHANGED
@@ -8,29 +8,6 @@
8
8
  *
9
9
  * @module
10
10
  */
11
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
12
- if (k2 === undefined) k2 = k;
13
- var desc = Object.getOwnPropertyDescriptor(m, k);
14
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
15
- desc = { enumerable: true, get: function() { return m[k]; } };
16
- }
17
- Object.defineProperty(o, k2, desc);
18
- }) : (function(o, m, k, k2) {
19
- if (k2 === undefined) k2 = k;
20
- o[k2] = m[k];
21
- }));
22
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
23
- Object.defineProperty(o, "default", { enumerable: true, value: v });
24
- }) : function(o, v) {
25
- o["default"] = v;
26
- });
27
- var __importStar = (this && this.__importStar) || function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
11
  var __importDefault = (this && this.__importDefault) || function (mod) {
35
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
36
13
  };
@@ -39,11 +16,11 @@ exports.MockActivityEnvironment = exports.defaultActivityInfo = exports.TestWork
39
16
  require("abort-controller/polyfill"); // eslint-disable-line import/no-unassigned-import
40
17
  const node_path_1 = __importDefault(require("node:path"));
41
18
  const node_events_1 = __importDefault(require("node:events"));
42
- const activity = __importStar(require("@temporalio/activity"));
43
19
  const client_1 = require("@temporalio/client");
44
20
  const common_1 = require("@temporalio/common");
45
21
  const time_1 = require("@temporalio/common/lib/time");
46
22
  const worker_1 = require("@temporalio/worker");
23
+ const activity_1 = require("@temporalio/worker/lib/activity");
47
24
  const core_bridge_1 = require("@temporalio/core-bridge");
48
25
  const internal_non_workflow_1 = require("@temporalio/common/lib/internal-non-workflow");
49
26
  const connection_1 = require("./connection");
@@ -229,7 +206,6 @@ class TestWorkflowEnvironment {
229
206
  * yourself.
230
207
  */
231
208
  static async createLocal(opts) {
232
- // eslint-disable-next-line deprecation/deprecation
233
209
  return await this.create({
234
210
  server: { type: 'dev-server', ...opts?.server },
235
211
  client: opts?.client,
@@ -299,31 +275,31 @@ exports.defaultActivityInfo = {
299
275
  /**
300
276
  * An execution environment for testing Activities.
301
277
  *
302
- * Mocks Activity {@link Context | activity.Context} and exposes hooks for
303
- * cancellation and heartbeats.
278
+ * Mocks Activity {@link Context | activity.Context} and exposes hooks for cancellation and heartbeats.
279
+ *
280
+ * Note that the `Context` object used by this environment will be reused for all activities that are run in this
281
+ * environment. Consequently, once `cancel()` is called, any further activity that gets executed in this environment
282
+ * will immediately be in a cancelled state.
304
283
  */
305
284
  class MockActivityEnvironment extends node_events_1.default.EventEmitter {
306
- constructor(info) {
285
+ constructor(info, opts) {
307
286
  super();
308
287
  this.cancel = () => undefined;
309
- const abortController = new AbortController();
310
- const promise = new Promise((_, reject) => {
311
- this.cancel = (reason) => {
312
- abortController.abort();
313
- reject(new common_1.CancelledFailure(reason));
314
- };
315
- });
316
288
  const heartbeatCallback = (details) => this.emit('heartbeat', details);
317
- this.context = new activity.Context({ ...exports.defaultActivityInfo, ...info }, promise, abortController.signal, heartbeatCallback, worker_1.Runtime.instance().logger);
318
- promise.catch(() => {
319
- /* avoid unhandled rejection */
320
- });
289
+ const loadedDataConverter = {
290
+ payloadConverter: common_1.defaultPayloadConverter,
291
+ payloadCodecs: [],
292
+ failureConverter: common_1.defaultFailureConverter,
293
+ };
294
+ this.activity = new activity_1.Activity({ ...exports.defaultActivityInfo, ...info }, undefined, loadedDataConverter, heartbeatCallback, opts?.interceptors ?? []);
295
+ this.context = this.activity.context;
296
+ this.cancel = this.activity.cancel;
321
297
  }
322
298
  /**
323
299
  * Run a function in Activity Context
324
300
  */
325
- run(fn, ...args) {
326
- return activity.asyncLocalStorage.run(this.context, fn, ...args);
301
+ async run(fn, ...args) {
302
+ return this.activity.runNoEncoding(fn, { args, headers: {} });
327
303
  }
328
304
  }
329
305
  exports.MockActivityEnvironment = MockActivityEnvironment;
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/lib/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;AACA,sDAAqD;AAErD,oEAAoE;AACpE,iFAAiF;AAC1E,KAAK,UAAU,eAAe,CACnC,UAAsB,EACtB,SAAiB,EACjB,WAAW,GAAG,GAAG,EACjB,iBAAiB,GAAG,CAAC;IAErB,MAAM,KAAK,GAAG,sCAAsC,CAAC;IACrD,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,WAAW,EAAE,EAAE,OAAO,EAAE;QACvD,IAAI;YACF,MAAM,UAAU,CAAC,eAAe,CAAC,2BAA2B,CAAC;gBAC3D,SAAS;gBACT,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE;aACzC,CAAC,CAAC;SACJ;QAAC,OAAO,GAAQ,EAAE;YACjB,IACE,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAAC;gBAClD,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,kCAAkC,CAAC;gBACxD,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,+BAA+B,CAAC;gBACrD,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,sDAAsD,CAAC;gBAC5E,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAC3B;gBACA,MAAM;aACP;YACD,IAAI,OAAO,KAAK,WAAW,EAAE;gBAC3B,MAAM,GAAG,CAAC;aACX;YACD,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAC,CAAC,CAAC;SAC/E;KACF;AACH,CAAC;AA7BD,0CA6BC;AAEM,KAAK,UAAU,eAAe,CACnC,UAAsB,EACtB,SAAiB,EACjB,WAAW,GAAG,GAAG,EACjB,iBAAiB,GAAG,CAAC;IAErB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,WAAW,EAAE,EAAE,OAAO,EAAE;QACvD,IAAI;YACF,MAAM,UAAU,CAAC,eAAe,CAAC,iBAAiB,CAAC;gBACjD,SAAS;gBACT,gCAAgC,EAAE,IAAA,aAAM,EAAC,OAAO,CAAC;aAClD,CAAC,CAAC;YACH,MAAM;SACP;QAAC,OAAO,GAAQ,EAAE;YACjB,IAAI,GAAG,CAAC,OAAO,KAAK,2BAA2B,EAAE;gBAC/C,MAAM;aACP;YACD,IAAI,OAAO,KAAK,WAAW,EAAE;gBAC3B,MAAM,GAAG,CAAC;aACX;YACD,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAC,CAAC,CAAC;SAC/E;KACF;AACH,CAAC;AAvBD,0CAuBC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;AACA,sDAAqD;AAErD,oEAAoE;AACpE,iFAAiF;AAC1E,KAAK,UAAU,eAAe,CACnC,UAAsB,EACtB,SAAiB,EACjB,WAAW,GAAG,GAAG,EACjB,iBAAiB,GAAG,CAAC;IAErB,MAAM,KAAK,GAAG,sCAAsC,CAAC;IACrD,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,WAAW,EAAE,EAAE,OAAO,EAAE,CAAC;QACxD,IAAI,CAAC;YACH,MAAM,UAAU,CAAC,eAAe,CAAC,2BAA2B,CAAC;gBAC3D,SAAS;gBACT,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE;aACzC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,IACE,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAAC;gBAClD,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,kCAAkC,CAAC;gBACxD,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,+BAA+B,CAAC;gBACrD,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,sDAAsD,CAAC;gBAC5E,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAC3B,CAAC;gBACD,MAAM;YACR,CAAC;YACD,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;gBAC5B,MAAM,GAAG,CAAC;YACZ,CAAC;YACD,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAC,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;AACH,CAAC;AA7BD,0CA6BC;AAEM,KAAK,UAAU,eAAe,CACnC,UAAsB,EACtB,SAAiB,EACjB,WAAW,GAAG,GAAG,EACjB,iBAAiB,GAAG,CAAC;IAErB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,WAAW,EAAE,EAAE,OAAO,EAAE,CAAC;QACxD,IAAI,CAAC;YACH,MAAM,UAAU,CAAC,eAAe,CAAC,iBAAiB,CAAC;gBACjD,SAAS;gBACT,gCAAgC,EAAE,IAAA,aAAM,EAAC,OAAO,CAAC;aAClD,CAAC,CAAC;YACH,MAAM;QACR,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,IAAI,GAAG,CAAC,OAAO,KAAK,2BAA2B,EAAE,CAAC;gBAChD,MAAM;YACR,CAAC;YACD,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;gBAC5B,MAAM,GAAG,CAAC;YACZ,CAAC;YACD,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAC,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;AACH,CAAC;AAvBD,0CAuBC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@temporalio/testing",
3
- "version": "1.8.6",
3
+ "version": "1.9.0",
4
4
  "description": "Temporal.io SDK Testing sub-package",
5
5
  "main": "lib/index.js",
6
6
  "types": "./lib/index.d.ts",
@@ -13,13 +13,13 @@
13
13
  "license": "MIT",
14
14
  "dependencies": {
15
15
  "@grpc/grpc-js": "~1.7.3",
16
- "@temporalio/activity": "1.8.6",
17
- "@temporalio/client": "1.8.6",
18
- "@temporalio/common": "1.8.6",
19
- "@temporalio/core-bridge": "1.8.6",
20
- "@temporalio/proto": "1.8.6",
21
- "@temporalio/worker": "1.8.6",
22
- "@temporalio/workflow": "1.8.6",
16
+ "@temporalio/activity": "1.9.0",
17
+ "@temporalio/client": "1.9.0",
18
+ "@temporalio/common": "1.9.0",
19
+ "@temporalio/core-bridge": "1.9.0",
20
+ "@temporalio/proto": "1.9.0",
21
+ "@temporalio/worker": "1.9.0",
22
+ "@temporalio/workflow": "1.9.0",
23
23
  "abort-controller": "^3.0.0"
24
24
  },
25
25
  "bugs": {
@@ -38,5 +38,5 @@
38
38
  "publishConfig": {
39
39
  "access": "public"
40
40
  },
41
- "gitHead": "1e95cf92ec5e6efffb7aedb064ea46be05df0c14"
41
+ "gitHead": "5096976287616207edcd3e4281a2a5e1f7393e33"
42
42
  }
package/src/index.ts CHANGED
@@ -20,9 +20,10 @@ import {
20
20
  WorkflowClientOptions,
21
21
  WorkflowResultOptions,
22
22
  } from '@temporalio/client';
23
- import { ActivityFunction, CancelledFailure, Duration } from '@temporalio/common';
23
+ import { ActivityFunction, Duration, defaultFailureConverter, defaultPayloadConverter } from '@temporalio/common';
24
24
  import { msToNumber, msToTs, tsToMs } from '@temporalio/common/lib/time';
25
- import { NativeConnection, Runtime } from '@temporalio/worker';
25
+ import { ActivityInterceptorsFactory, NativeConnection, Runtime } from '@temporalio/worker';
26
+ import { Activity } from '@temporalio/worker/lib/activity';
26
27
  import {
27
28
  EphemeralServer,
28
29
  EphemeralServerConfig,
@@ -258,7 +259,6 @@ export class TestWorkflowEnvironment {
258
259
  * yourself.
259
260
  */
260
261
  static async createLocal(opts?: LocalTestWorkflowEnvironmentOptions): Promise<TestWorkflowEnvironment> {
261
- // eslint-disable-next-line deprecation/deprecation
262
262
  return await this.create({
263
263
  server: { type: 'dev-server', ...opts?.server },
264
264
  client: opts?.client,
@@ -364,6 +364,10 @@ export class TestWorkflowEnvironment {
364
364
  }
365
365
  }
366
366
 
367
+ export interface MockActivityEnvironmentOptions {
368
+ interceptors?: ActivityInterceptorsFactory[];
369
+ }
370
+
367
371
  /**
368
372
  * Used as the default activity info for Activities executed in the {@link MockActivityEnvironment}
369
373
  */
@@ -390,39 +394,40 @@ export const defaultActivityInfo: activity.Info = {
390
394
  /**
391
395
  * An execution environment for testing Activities.
392
396
  *
393
- * Mocks Activity {@link Context | activity.Context} and exposes hooks for
394
- * cancellation and heartbeats.
397
+ * Mocks Activity {@link Context | activity.Context} and exposes hooks for cancellation and heartbeats.
398
+ *
399
+ * Note that the `Context` object used by this environment will be reused for all activities that are run in this
400
+ * environment. Consequently, once `cancel()` is called, any further activity that gets executed in this environment
401
+ * will immediately be in a cancelled state.
395
402
  */
396
403
  export class MockActivityEnvironment extends events.EventEmitter {
397
404
  public cancel: (reason?: any) => void = () => undefined;
398
405
  public readonly context: activity.Context;
406
+ private readonly activity: Activity;
399
407
 
400
- constructor(info?: Partial<activity.Info>) {
408
+ constructor(info?: Partial<activity.Info>, opts?: MockActivityEnvironmentOptions) {
401
409
  super();
402
- const abortController = new AbortController();
403
- const promise = new Promise<never>((_, reject) => {
404
- this.cancel = (reason?: any) => {
405
- abortController.abort();
406
- reject(new CancelledFailure(reason));
407
- };
408
- });
409
410
  const heartbeatCallback = (details?: unknown) => this.emit('heartbeat', details);
410
- this.context = new activity.Context(
411
+ const loadedDataConverter = {
412
+ payloadConverter: defaultPayloadConverter,
413
+ payloadCodecs: [],
414
+ failureConverter: defaultFailureConverter,
415
+ };
416
+ this.activity = new Activity(
411
417
  { ...defaultActivityInfo, ...info },
412
- promise,
413
- abortController.signal,
418
+ undefined,
419
+ loadedDataConverter,
414
420
  heartbeatCallback,
415
- Runtime.instance().logger
421
+ opts?.interceptors ?? []
416
422
  );
417
- promise.catch(() => {
418
- /* avoid unhandled rejection */
419
- });
423
+ this.context = this.activity.context;
424
+ this.cancel = this.activity.cancel;
420
425
  }
421
426
 
422
427
  /**
423
428
  * Run a function in Activity Context
424
429
  */
425
- public run<P extends any[], R, F extends ActivityFunction<P, R>>(fn: F, ...args: P): Promise<R> {
426
- return activity.asyncLocalStorage.run(this.context, fn, ...args);
430
+ public async run<P extends any[], R, F extends ActivityFunction<P, R>>(fn: F, ...args: P): Promise<R> {
431
+ return this.activity.runNoEncoding(fn as ActivityFunction<any, any>, { args, headers: {} }) as Promise<R>;
427
432
  }
428
433
  }