@medusajs/test-utils 3.0.0-snapshot-20250410045121 → 3.0.0-snapshot-20250410105645

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.
package/dist/events.d.ts CHANGED
@@ -1,3 +1,5 @@
1
1
  import { IEventBusModuleService } from "@medusajs/framework/types";
2
- export declare const waitSubscribersExecution: (eventName: string, eventBus: IEventBusModuleService) => Promise<any[]>;
2
+ export declare const waitSubscribersExecution: (eventName: string, eventBus: IEventBusModuleService, { timeout, }?: {
3
+ timeout?: number;
4
+ }) => Promise<unknown>;
3
5
  //# sourceMappingURL=events.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAA;AAIlE,eAAO,MAAM,wBAAwB,cACxB,MAAM,YACP,sBAAsB,mBA0CjC,CAAA"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAA;AAIlE,eAAO,MAAM,wBAAwB,cACxB,MAAM,YACP,sBAAsB,iBAG7B;IACD,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,qBAqEF,CAAA"}
package/dist/events.js CHANGED
@@ -2,10 +2,17 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.waitSubscribersExecution = void 0;
4
4
  // Allows you to wait for all subscribers to execute for a given event. Only works with the local event bus.
5
- const waitSubscribersExecution = (eventName, eventBus) => {
5
+ const waitSubscribersExecution = (eventName, eventBus, { timeout = 5000, } = {}) => {
6
6
  const eventEmitter = eventBus.eventEmitter_;
7
7
  const subscriberPromises = [];
8
8
  const originalListeners = eventEmitter.listeners(eventName);
9
+ let timeoutId = null;
10
+ // Create a promise that rejects after the timeout
11
+ const timeoutPromise = new Promise((_, reject) => {
12
+ timeoutId = setTimeout(() => {
13
+ reject(new Error(`Timeout of ${timeout}ms exceeded while waiting for event "${eventName}"`));
14
+ }, timeout);
15
+ });
9
16
  // If there are no existing listeners, resolve once the event happens. Otherwise, wrap the existing subscribers in a promise and resolve once they are done.
10
17
  if (!eventEmitter.listeners(eventName).length) {
11
18
  let ok;
@@ -16,10 +23,8 @@ const waitSubscribersExecution = (eventName, eventBus) => {
16
23
  eventEmitter.on(eventName, ok);
17
24
  }
18
25
  else {
19
- console.log({ eventName });
20
26
  eventEmitter.listeners(eventName).forEach((listener) => {
21
27
  eventEmitter.removeListener(eventName, listener);
22
- console.log({ listener });
23
28
  let ok, nok;
24
29
  const promise = new Promise((resolve, reject) => {
25
30
  ok = resolve;
@@ -27,17 +32,31 @@ const waitSubscribersExecution = (eventName, eventBus) => {
27
32
  });
28
33
  subscriberPromises.push(promise);
29
34
  const newListener = async (...args2) => {
30
- return await listener.apply(eventBus, args2).then(ok).catch(nok);
35
+ try {
36
+ const res = await listener.apply(eventBus, args2);
37
+ ok(res);
38
+ return res;
39
+ }
40
+ catch (error) {
41
+ nok(error);
42
+ }
31
43
  };
32
44
  eventEmitter.on(eventName, newListener);
33
45
  });
34
46
  }
35
- return Promise.all(subscriberPromises).finally(() => {
47
+ const subscribersPromise = Promise.all(subscriberPromises).finally(() => {
48
+ // Clear the timeout since events have been fired and handled
49
+ if (timeoutId !== null) {
50
+ clearTimeout(timeoutId);
51
+ }
52
+ // Restore original event listeners
36
53
  eventEmitter.removeAllListeners(eventName);
37
54
  originalListeners.forEach((listener) => {
38
55
  eventEmitter.on(eventName, listener);
39
56
  });
40
57
  });
58
+ // Race between the subscribers and the timeout
59
+ return Promise.race([subscribersPromise, timeoutPromise]);
41
60
  };
42
61
  exports.waitSubscribersExecution = waitSubscribersExecution;
43
62
  //# sourceMappingURL=events.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":";;;AAGA,4GAA4G;AACrG,MAAM,wBAAwB,GAAG,CACtC,SAAiB,EACjB,QAAgC,EAChC,EAAE;IACF,MAAM,YAAY,GAAkB,QAAgB,CAAC,aAAa,CAAA;IAClE,MAAM,kBAAkB,GAAmB,EAAE,CAAA;IAC7C,MAAM,iBAAiB,GAAG,YAAY,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;IAE3D,4JAA4J;IAC5J,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,CAAC;QAC9C,IAAI,EAAE,CAAA;QACN,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YACtC,EAAE,GAAG,OAAO,CAAA;QACd,CAAC,CAAC,CAAA;QAEF,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAChC,YAAY,CAAC,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,CAAA;IAChC,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,CAAC,CAAA;QAC1B,YAAY,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,QAAa,EAAE,EAAE;YAC1D,YAAY,CAAC,cAAc,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;YAChD,OAAO,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAA;YAEzB,IAAI,EAAE,EAAE,GAAG,CAAA;YACX,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC9C,EAAE,GAAG,OAAO,CAAA;gBACZ,GAAG,GAAG,MAAM,CAAA;YACd,CAAC,CAAC,CAAA;YACF,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YAEhC,MAAM,WAAW,GAAG,KAAK,EAAE,GAAG,KAAK,EAAE,EAAE;gBACrC,OAAO,MAAM,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAClE,CAAC,CAAA;YAED,YAAY,CAAC,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA;QACzC,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,OAAO,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;QAClD,YAAY,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAA;QAC1C,iBAAiB,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;YACrC,YAAY,CAAC,EAAE,CAAC,SAAS,EAAE,QAAkC,CAAC,CAAA;QAChE,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AA5CY,QAAA,wBAAwB,4BA4CpC"}
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"root":["../src/database.ts","../src/events.ts","../src/id-map.ts","../src/index.ts","../src/init-modules.ts","../src/jest.ts","../src/medusa-test-runner.ts","../src/mock-event-bus-service.ts","../src/module-test-runner.ts","../src/medusa-test-runner-utils/bootstrap-app.ts","../src/medusa-test-runner-utils/clear-instances.ts","../src/medusa-test-runner-utils/config.ts","../src/medusa-test-runner-utils/index.ts","../src/medusa-test-runner-utils/use-db.ts","../src/medusa-test-runner-utils/utils.ts"],"version":"5.6.2"}
1
+ {"root":["../src/database.ts","../src/events.ts","../src/id-map.ts","../src/index.ts","../src/init-modules.ts","../src/jest.ts","../src/medusa-test-runner.ts","../src/mock-event-bus-service.ts","../src/module-test-runner.ts","../src/__tests__/events.spec.ts","../src/medusa-test-runner-utils/bootstrap-app.ts","../src/medusa-test-runner-utils/clear-instances.ts","../src/medusa-test-runner-utils/config.ts","../src/medusa-test-runner-utils/index.ts","../src/medusa-test-runner-utils/use-db.ts","../src/medusa-test-runner-utils/utils.ts"],"version":"5.6.2"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@medusajs/test-utils",
3
- "version": "3.0.0-snapshot-20250410045121",
3
+ "version": "3.0.0-snapshot-20250410105645",
4
4
  "description": "Test utils for Medusa",
5
5
  "main": "dist/index.js",
6
6
  "repository": {
@@ -25,7 +25,7 @@
25
25
  "author": "Medusa",
26
26
  "license": "MIT",
27
27
  "devDependencies": {
28
- "@medusajs/framework": "3.0.0-snapshot-20250410045121",
28
+ "@medusajs/framework": "3.0.0-snapshot-20250410105645",
29
29
  "@mikro-orm/core": "6.4.3",
30
30
  "@mikro-orm/knex": "6.4.3",
31
31
  "@mikro-orm/migrations": "6.4.3",
@@ -45,8 +45,8 @@
45
45
  "randomatic": "^3.1.1"
46
46
  },
47
47
  "peerDependencies": {
48
- "@medusajs/framework": "3.0.0-snapshot-20250410045121",
49
- "@medusajs/medusa": "3.0.0-snapshot-20250410045121",
48
+ "@medusajs/framework": "3.0.0-snapshot-20250410105645",
49
+ "@medusajs/medusa": "3.0.0-snapshot-20250410105645",
50
50
  "@mikro-orm/postgresql": "6.4.3",
51
51
  "awilix": "^8.0.1"
52
52
  },