@bluelibs/runner 3.4.0 → 3.4.2

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/define.d.ts CHANGED
@@ -6,6 +6,23 @@
6
6
  * events, and global middleware flags. See README for high-level concepts.
7
7
  */
8
8
  import { ITask, ITaskDefinition, IResource, IResourceWithConfig, IResourceDefinition, IEventDefinition, IMiddlewareDefinition, DependencyMapType, DependencyValuesType, IMiddleware, IEvent, RegisterableItems, ITag, ITagDefinition, ITaskMeta, IResourceMeta } from "./defs";
9
+ /**
10
+ * Define a task.
11
+ * Generates a strongly-typed task object with id, lifecycle events, dependencies,
12
+ * middleware, and metadata.
13
+ *
14
+ * - If `id` is omitted, an anonymous, file-based id is generated.
15
+ * - Wires lifecycle events: `beforeRun`, `afterRun`, `onError`.
16
+ * - Carries through dependencies, middleware, input schema, and metadata.
17
+ *
18
+ * @typeParam Input - Input type accepted by the task's `run` function.
19
+ * @typeParam Output - Promise type returned by the `run` function.
20
+ * @typeParam Deps - Dependency map type this task requires.
21
+ * @typeParam TOn - Event type or "*" this task listens to.
22
+ * @typeParam TMeta - Arbitrary metadata type carried by the task.
23
+ * @param taskConfig - The task definition config.
24
+ * @returns A branded task definition usable by the runner.
25
+ */
9
26
  export declare function defineTask<Input = undefined, Output extends Promise<any> = any, Deps extends DependencyMapType = any, TOn extends "*" | IEventDefinition | undefined = undefined, TMeta extends ITaskMeta = any>(taskConfig: ITaskDefinition<Input, Output, Deps, TOn, TMeta>): ITask<Input, Output, Deps, TOn, TMeta>;
10
27
  export declare function defineResource<TConfig = void, TValue extends Promise<any> = Promise<any>, TDeps extends DependencyMapType = {}, TPrivate = any, TMeta extends IResourceMeta = any>(constConfig: IResourceDefinition<TConfig, TValue, TDeps, TPrivate, any, any, TMeta>): IResource<TConfig, TValue, TDeps, TPrivate, TMeta>;
11
28
  /**
@@ -28,22 +45,69 @@ export type MiddlewareEverywhereOptions = {
28
45
  */
29
46
  resources?: boolean;
30
47
  };
48
+ /**
49
+ * Define a middleware.
50
+ * Creates a middleware definition with anonymous id generation, `.with(config)`,
51
+ * and `.everywhere()` helpers.
52
+ *
53
+ * - `.with(config)` merges config (optionally validated via `configSchema`).
54
+ * - `.everywhere()` marks the middleware global (optionally scoping to tasks/resources).
55
+ *
56
+ * @typeParam TConfig - Configuration type accepted by the middleware.
57
+ * @typeParam TDependencies - Dependency map type required by the middleware.
58
+ * @param middlewareDef - The middleware definition config.
59
+ * @returns A branded middleware definition usable by the runner.
60
+ */
31
61
  export declare function defineMiddleware<TConfig extends Record<string, any>, TDependencies extends DependencyMapType>(middlewareDef: IMiddlewareDefinition<TConfig, TDependencies>): IMiddleware<TConfig, TDependencies>;
62
+ /**
63
+ * Type guard: checks if a definition is a Task.
64
+ * @param definition - Any value to test.
65
+ * @returns True when `definition` is a branded Task.
66
+ */
32
67
  export declare function isTask(definition: any): definition is ITask;
68
+ /**
69
+ * Type guard: checks if a definition is a Resource.
70
+ * @param definition - Any value to test.
71
+ * @returns True when `definition` is a branded Resource.
72
+ */
33
73
  export declare function isResource(definition: any): definition is IResource;
74
+ /**
75
+ * Type guard: checks if a definition is a Resource that carries config via `.with()`.
76
+ * @param definition - Any value to test.
77
+ * @returns True when `definition` is a branded ResourceWithConfig.
78
+ */
34
79
  export declare function isResourceWithConfig(definition: any): definition is IResourceWithConfig;
80
+ /**
81
+ * Type guard: checks if a definition is an Event.
82
+ * @param definition - Any value to test.
83
+ * @returns True when `definition` is a branded Event.
84
+ */
35
85
  export declare function isEvent(definition: any): definition is IEvent;
86
+ /**
87
+ * Type guard: checks if a definition is a Middleware.
88
+ * @param definition - Any value to test.
89
+ * @returns True when `definition` is a branded Middleware.
90
+ */
36
91
  export declare function isMiddleware(definition: any): definition is IMiddleware;
37
92
  /**
38
93
  * Override helper that preserves the original `id` and returns the same type.
39
- * You can override any property except `id`.
94
+ * You can override any property except `id`. The override is shallow-merged over the base.
95
+ *
96
+ * @param base - The base definition to override.
97
+ * @param patch - Properties to override (except `id`).
98
+ * @returns A definition of the same kind with overrides applied.
40
99
  */
41
100
  export declare function defineOverride<T extends ITask<any, any, any, any>>(base: T, patch: Omit<Partial<T>, "id">): T;
42
101
  export declare function defineOverride<T extends IResource<any, any, any, any>>(base: T, patch: Omit<Partial<T>, "id">): T;
43
102
  export declare function defineOverride<T extends IMiddleware<any, any>>(base: T, patch: Omit<Partial<T>, "id">): T;
44
103
  /**
45
- * Creates a tag definition.
104
+ * Create a tag definition.
46
105
  * - `.with(config)` to create configured instances
47
- * - `.extract(tags)` to extract this tag from a list of tags
106
+ * - `.extract(tags)` to extract this tag from a list of tags or a taggable's meta
107
+ *
108
+ * @typeParam TConfig - Configuration type carried by configured tags.
109
+ * @typeParam TEnforceContract - Optional helper type to enforce a contract when tags are used.
110
+ * @param definition - The tag definition (id).
111
+ * @returns A tag object with helpers to configure and extract.
48
112
  */
49
113
  export declare function defineTag<TConfig = void, TEnforceContract = void>(definition: ITagDefinition<TConfig, TEnforceContract>): ITag<TConfig, TEnforceContract>;
package/dist/define.js CHANGED
@@ -23,13 +23,24 @@ const defs_1 = require("./defs");
23
23
  const errors_1 = require("./errors");
24
24
  const getCallerFile_1 = require("./tools/getCallerFile");
25
25
  // Helper function to get the caller file
26
+ /**
27
+ * Define a task.
28
+ * Generates a strongly-typed task object with id, lifecycle events, dependencies,
29
+ * middleware, and metadata.
30
+ *
31
+ * - If `id` is omitted, an anonymous, file-based id is generated.
32
+ * - Wires lifecycle events: `beforeRun`, `afterRun`, `onError`.
33
+ * - Carries through dependencies, middleware, input schema, and metadata.
34
+ *
35
+ * @typeParam Input - Input type accepted by the task's `run` function.
36
+ * @typeParam Output - Promise type returned by the `run` function.
37
+ * @typeParam Deps - Dependency map type this task requires.
38
+ * @typeParam TOn - Event type or "*" this task listens to.
39
+ * @typeParam TMeta - Arbitrary metadata type carried by the task.
40
+ * @param taskConfig - The task definition config.
41
+ * @returns A branded task definition usable by the runner.
42
+ */
26
43
  function defineTask(taskConfig) {
27
- /**
28
- * Creates a task definition.
29
- * - Generates an anonymous id based on file path when `id` is omitted
30
- * - Wires lifecycle events: beforeRun, afterRun, onError
31
- * - Carries through dependencies and middleware as declared
32
- */
33
44
  const filePath = (0, getCallerFile_1.getCallerFile)();
34
45
  const isAnonymous = !Boolean(taskConfig.id);
35
46
  const id = taskConfig.id || (0, getCallerFile_1.generateCallerIdFromFile)(filePath, "task");
@@ -75,10 +86,21 @@ function defineTask(taskConfig) {
75
86
  }
76
87
  function defineResource(constConfig) {
77
88
  /**
78
- * Creates a resource definition.
79
- * - Generates anonymous id when omitted (resource or index flavor)
80
- * - Wires lifecycle events: beforeInit, afterInit, onError
81
- * - Exposes `.with(config)` for config‑bound registration
89
+ * Define a resource.
90
+ * Produces a strongly-typed resource with id, lifecycle events, registration hooks,
91
+ * and optional config schema.
92
+ *
93
+ * - If `id` is omitted, an anonymous, file-based id is generated (resource or index flavored).
94
+ * - Wires lifecycle events: `beforeInit`, `afterInit`, `onError`.
95
+ * - Provides `.with(config)` for config-bound registration with optional runtime validation.
96
+ *
97
+ * @typeParam TConfig - Configuration type accepted by the resource.
98
+ * @typeParam TValue - Promise type resolved by the resource `init`.
99
+ * @typeParam TDeps - Dependency map type this resource requires.
100
+ * @typeParam TPrivate - Private context type exposed to middleware during init.
101
+ * @typeParam TMeta - Arbitrary metadata type carried by the resource.
102
+ * @param constConfig - The resource definition config.
103
+ * @returns A branded resource definition usable by the runner.
82
104
  */
83
105
  // The symbolFilePath might already come from defineIndex() for example
84
106
  const filePath = constConfig[defs_1.symbolFilePath] || (0, getCallerFile_1.getCallerFile)();
@@ -178,8 +200,13 @@ function defineIndex(items) {
178
200
  }
179
201
  function defineEvent(config) {
180
202
  /**
181
- * Creates an event definition. Anonymous ids are generated from file path
182
- * when omitted. The returned object is branded for runtime checks.
203
+ * Define an event.
204
+ * Generates a branded event definition with a stable id (anonymous if omitted)
205
+ * and file path metadata for better debugging.
206
+ *
207
+ * @typeParam TPayload - Payload type carried by the event.
208
+ * @param config - Optional event definition (id, etc.).
209
+ * @returns A branded event definition.
183
210
  */
184
211
  const callerFilePath = (0, getCallerFile_1.getCallerFile)();
185
212
  const eventConfig = config || {};
@@ -190,13 +217,20 @@ function defineEvent(config) {
190
217
  [defs_1.symbolEvent]: true, // This is a workaround
191
218
  };
192
219
  }
220
+ /**
221
+ * Define a middleware.
222
+ * Creates a middleware definition with anonymous id generation, `.with(config)`,
223
+ * and `.everywhere()` helpers.
224
+ *
225
+ * - `.with(config)` merges config (optionally validated via `configSchema`).
226
+ * - `.everywhere()` marks the middleware global (optionally scoping to tasks/resources).
227
+ *
228
+ * @typeParam TConfig - Configuration type accepted by the middleware.
229
+ * @typeParam TDependencies - Dependency map type required by the middleware.
230
+ * @param middlewareDef - The middleware definition config.
231
+ * @returns A branded middleware definition usable by the runner.
232
+ */
193
233
  function defineMiddleware(middlewareDef) {
194
- /**
195
- * Creates a middleware definition with:
196
- * - Anonymous id generation when omitted
197
- * - `.with(config)` to create configured instances
198
- * - `.everywhere()` to mark as global (optionally scoping to tasks/resources)
199
- */
200
234
  const filePath = (0, getCallerFile_1.getCallerFile)();
201
235
  const object = {
202
236
  [defs_1.symbolFilePath]: filePath,
@@ -240,18 +274,43 @@ function defineMiddleware(middlewareDef) {
240
274
  },
241
275
  };
242
276
  }
277
+ /**
278
+ * Type guard: checks if a definition is a Task.
279
+ * @param definition - Any value to test.
280
+ * @returns True when `definition` is a branded Task.
281
+ */
243
282
  function isTask(definition) {
244
283
  return definition && definition[defs_1.symbolTask];
245
284
  }
285
+ /**
286
+ * Type guard: checks if a definition is a Resource.
287
+ * @param definition - Any value to test.
288
+ * @returns True when `definition` is a branded Resource.
289
+ */
246
290
  function isResource(definition) {
247
291
  return definition && definition[defs_1.symbolResource];
248
292
  }
293
+ /**
294
+ * Type guard: checks if a definition is a Resource that carries config via `.with()`.
295
+ * @param definition - Any value to test.
296
+ * @returns True when `definition` is a branded ResourceWithConfig.
297
+ */
249
298
  function isResourceWithConfig(definition) {
250
299
  return definition && definition[defs_1.symbolResourceWithConfig];
251
300
  }
301
+ /**
302
+ * Type guard: checks if a definition is an Event.
303
+ * @param definition - Any value to test.
304
+ * @returns True when `definition` is a branded Event.
305
+ */
252
306
  function isEvent(definition) {
253
307
  return definition && definition[defs_1.symbolEvent];
254
308
  }
309
+ /**
310
+ * Type guard: checks if a definition is a Middleware.
311
+ * @param definition - Any value to test.
312
+ * @returns True when `definition` is a branded Middleware.
313
+ */
255
314
  function isMiddleware(definition) {
256
315
  return definition && definition[defs_1.symbolMiddleware];
257
316
  }
@@ -265,9 +324,14 @@ function defineOverride(base, patch) {
265
324
  };
266
325
  }
267
326
  /**
268
- * Creates a tag definition.
327
+ * Create a tag definition.
269
328
  * - `.with(config)` to create configured instances
270
- * - `.extract(tags)` to extract this tag from a list of tags
329
+ * - `.extract(tags)` to extract this tag from a list of tags or a taggable's meta
330
+ *
331
+ * @typeParam TConfig - Configuration type carried by configured tags.
332
+ * @typeParam TEnforceContract - Optional helper type to enforce a contract when tags are used.
333
+ * @param definition - The tag definition (id).
334
+ * @returns A tag object with helpers to configure and extract.
271
335
  */
272
336
  function defineTag(definition) {
273
337
  const id = definition.id;
@@ -1 +1 @@
1
- {"version":3,"file":"define.js","sourceRoot":"","sources":["../src/define.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"define.js","sourceRoot":"","sources":["../src/define.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { IResource, RegisterableItems, IMiddleware } from "../defs";
1
+ import { IResource, RegisterableItems, IMiddleware, ITag } from "../defs";
2
2
  import { IDependentNode } from "../tools/findCircularDependencies";
3
3
  import { EventManager } from "./EventManager";
4
4
  import { Logger } from "./Logger";
@@ -37,5 +37,7 @@ export declare class Store {
37
37
  getEverywhereMiddlewareForResources(excludingIds: Array<string | symbol>): IMiddleware[];
38
38
  storeGenericItem<C>(item: RegisterableItems): void;
39
39
  storeEventsForAllTasks(): void;
40
+ getTasksWithTag(tag: string | ITag): TaskStoreElementType[] | import("../defs").ITask<any, any, any, any, any>[];
41
+ getResourcesWithTag(tag: string | ITag): ResourceStoreElementType[] | IResource<any, any, {}, any, any>[];
40
42
  getDependentNodes(): IDependentNode[];
41
43
  }
@@ -125,6 +125,12 @@ class Store {
125
125
  storeEventsForAllTasks() {
126
126
  this.registry.storeEventsForAllTasks();
127
127
  }
128
+ getTasksWithTag(tag) {
129
+ return this.registry.getTasksWithTag(tag);
130
+ }
131
+ getResourcesWithTag(tag) {
132
+ return this.registry.getResourcesWithTag(tag);
133
+ }
128
134
  getDependentNodes() {
129
135
  return this.registry.getDependentNodes();
130
136
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Store.js","sourceRoot":"","sources":["../../src/models/Store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Store.js","sourceRoot":"","sources":["../../src/models/Store.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { IResource, ITask, IResourceWithConfig, RegisterableItems, IMiddleware, IEvent } from "../defs";
1
+ import { IResource, ITask, IResourceWithConfig, RegisterableItems, IMiddleware, IEvent, ITag } from "../defs";
2
2
  import { TaskStoreElementType, MiddlewareStoreElementType, ResourceStoreElementType, EventStoreElementType } from "./StoreTypes";
3
3
  import { StoreValidator } from "./StoreValidator";
4
4
  export declare class StoreRegistry {
@@ -22,4 +22,6 @@ export declare class StoreRegistry {
22
22
  private prepareResource;
23
23
  private middlewareAsMap;
24
24
  getDependentNodes(): any[];
25
+ getTasksWithTag(tag: string | ITag): TaskStoreElementType[] | ITask<any, any, any, any, any>[];
26
+ getResourcesWithTag(tag: string | ITag): ResourceStoreElementType[] | IResource<any, any, {}, any, any>[];
25
27
  }
@@ -166,6 +166,22 @@ class StoreRegistry {
166
166
  }
167
167
  return depenedants;
168
168
  }
169
+ getTasksWithTag(tag) {
170
+ if (typeof tag === "string") {
171
+ return Array.from(this.tasks.values()).filter((x) => x.task.meta?.tags?.includes(tag));
172
+ }
173
+ return Array.from(this.tasks.values())
174
+ .filter((x) => tag.extract(x.task.meta?.tags))
175
+ .map((x) => x.task);
176
+ }
177
+ getResourcesWithTag(tag) {
178
+ if (typeof tag === "string") {
179
+ return Array.from(this.resources.values()).filter((x) => x.resource.meta?.tags?.includes(tag));
180
+ }
181
+ return Array.from(this.resources.values())
182
+ .filter((x) => tag.extract(x.resource.meta?.tags))
183
+ .map((x) => x.resource);
184
+ }
169
185
  }
170
186
  exports.StoreRegistry = StoreRegistry;
171
187
  //# sourceMappingURL=StoreRegistry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StoreRegistry.js","sourceRoot":"","sources":["../../src/models/StoreRegistry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StoreRegistry.js","sourceRoot":"","sources":["../../src/models/StoreRegistry.ts"],"names":[],"mappings":"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"}
@@ -36,16 +36,26 @@ function getCallerFile() {
36
36
  * @returns
37
37
  */
38
38
  function generateCallerIdFromFile(filePath, suffix = "", fallbackParts = 4) {
39
- filePath = filePath.replace(/\\/g, "/"); // Normalize path for consistency.
40
- const parts = filePath.split("/");
41
- const srcIndex = parts.lastIndexOf("src");
39
+ // Normalize paths for consistency across platforms
40
+ const normalizedPath = filePath.replace(/\\/g, "/");
41
+ const cwdNormalized = process.cwd().replace(/\\/g, "/");
42
+ const parts = normalizedPath.split("/");
42
43
  const nodeModulesIndex = parts.lastIndexOf("node_modules");
43
- const breakIndex = Math.max(srcIndex, nodeModulesIndex);
44
44
  let relevantParts;
45
- if (breakIndex !== -1) {
46
- relevantParts = parts.slice(breakIndex + 1);
45
+ if (nodeModulesIndex !== -1) {
46
+ // If inside node_modules, generate id relative to the package path
47
+ relevantParts = parts.slice(nodeModulesIndex + 1);
48
+ }
49
+ else if (normalizedPath === cwdNormalized ||
50
+ normalizedPath.startsWith(cwdNormalized + "/")) {
51
+ // Prefer generating id relative to the workspace root (process.cwd())
52
+ const relativeToCwd = normalizedPath
53
+ .slice(cwdNormalized.length)
54
+ .replace(/^\//, "");
55
+ relevantParts = relativeToCwd.length > 0 ? relativeToCwd.split("/") : [""];
47
56
  }
48
57
  else {
58
+ // Fallback: use the last N parts if path is outside cwd and not in node_modules
49
59
  relevantParts = parts.slice(-fallbackParts);
50
60
  }
51
61
  if (relevantParts.length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"getCallerFile.js","sourceRoot":"","sources":["../../src/tools/getCallerFile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getCallerFile.js","sourceRoot":"","sources":["../../src/tools/getCallerFile.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bluelibs/runner",
3
- "version": "3.4.0",
3
+ "version": "3.4.2",
4
4
  "description": "BlueLibs Runner",
5
5
  "main": "dist/index.js",
6
6
  "repository": {
@@ -536,7 +536,7 @@ describe("Global Events", () => {
536
536
 
537
537
  // Verify the simple event handler was executed
538
538
  expect(eventHandlerExecutions).toContain(
539
- "simple-handler:Symbol(__tests__.globalEvents.test.event)"
539
+ "simple-handler:Symbol(src.__tests__.globalEvents.test.event)"
540
540
  );
541
541
  });
542
542
  });
@@ -5,6 +5,7 @@ import {
5
5
  defineTask,
6
6
  defineMiddleware,
7
7
  defineEvent,
8
+ defineTag,
8
9
  } from "../../define";
9
10
  import { Logger } from "../../models";
10
11
 
@@ -167,4 +168,60 @@ describe("Store", () => {
167
168
  const result = store.getDependentNodes();
168
169
  expect(Array.isArray(result)).toBe(true);
169
170
  });
171
+
172
+ it("should call getTasksWithTag method", () => {
173
+ const tag = defineTag({
174
+ id: "tags.test",
175
+ });
176
+ const taskTest = defineTask({
177
+ meta: {
178
+ tags: [tag, "test"],
179
+ },
180
+ async run() {
181
+ return "OK";
182
+ },
183
+ });
184
+ const unfindableTask = defineTask({
185
+ run: async () => 1,
186
+ });
187
+ const rootResource = defineResource({
188
+ id: "root",
189
+ register: [taskTest, unfindableTask],
190
+ init: async () => "Root Value",
191
+ });
192
+
193
+ store.initializeStore(rootResource, {});
194
+ const result = store.getTasksWithTag(tag);
195
+ expect(Array.isArray(result)).toBe(true);
196
+ expect(result).toHaveLength(1);
197
+ const result2 = store.getTasksWithTag("test");
198
+ expect(result2).toHaveLength(1);
199
+ });
200
+
201
+ it("should call getResourcesWithTag method", () => {
202
+ const tag = defineTag({
203
+ id: "tags.test",
204
+ });
205
+ const resourceTest = defineResource({
206
+ meta: {
207
+ tags: [tag, "test"],
208
+ },
209
+ });
210
+
211
+ const unfindableResource = defineResource({
212
+ init: async () => 1,
213
+ });
214
+ const rootResource = defineResource({
215
+ id: "root",
216
+ register: [resourceTest, unfindableResource],
217
+ init: async () => "Root Value",
218
+ });
219
+
220
+ store.initializeStore(rootResource, {});
221
+ const result = store.getResourcesWithTag(tag);
222
+ expect(Array.isArray(result)).toBe(true);
223
+ expect(result).toHaveLength(1);
224
+ const result2 = store.getResourcesWithTag("test");
225
+ expect(result2).toHaveLength(1);
226
+ });
170
227
  });
@@ -314,6 +314,33 @@ describe("Anonymous Components", () => {
314
314
 
315
315
  await run(app);
316
316
  });
317
+
318
+ it("should allow two anonymous resources to co-exist and be distinct", async () => {
319
+ const resourceA = defineResource({
320
+ init: async () => "A",
321
+ });
322
+
323
+ const resourceB = defineResource({
324
+ init: async () => "B",
325
+ });
326
+
327
+ // Both ids should be symbols and different
328
+ expect(typeof resourceA.id).toBe("symbol");
329
+ expect(typeof resourceB.id).toBe("symbol");
330
+ expect(resourceA.id).not.toBe(resourceB.id);
331
+
332
+ const app = defineResource({
333
+ id: "app",
334
+ register: [resourceA, resourceB],
335
+ dependencies: { resourceA, resourceB },
336
+ async init(_, { resourceA, resourceB }) {
337
+ expect(resourceA).toBe("A");
338
+ expect(resourceB).toBe("B");
339
+ },
340
+ });
341
+
342
+ await run(app);
343
+ });
317
344
  });
318
345
 
319
346
  describe("Anonymous Events", () => {
@@ -57,7 +57,7 @@ describe("generateCallerIdFromFile", () => {
57
57
  it("should generate a symbol from a path containing src", () => {
58
58
  const filePath =
59
59
  "/Users/theodordiaconu/Projects/runner/src/globals/resources/queue.resource.ts";
60
- const expectedDescription = "globals.resources.queue.resource";
60
+ const expectedDescription = "src.globals.resources.queue.resource";
61
61
  expect(generateCallerIdFromFile(filePath).description).toEqual(
62
62
  expectedDescription
63
63
  );
@@ -83,7 +83,7 @@ describe("generateCallerIdFromFile", () => {
83
83
  it("should handle paths with backslashes", () => {
84
84
  const filePath =
85
85
  "C:\\Users\\theodordiaconu\\Projects\\runner\\src\\globals\\resources\\queue.resource.ts";
86
- const expectedDescription = "globals.resources.queue.resource";
86
+ const expectedDescription = "src.globals.resources.queue.resource";
87
87
  expect(generateCallerIdFromFile(filePath).description).toEqual(
88
88
  expectedDescription
89
89
  );
@@ -92,7 +92,7 @@ describe("generateCallerIdFromFile", () => {
92
92
  it("should handle file names without extensions", () => {
93
93
  const filePath =
94
94
  "/Users/theodordiaconu/Projects/runner/src/globals/resources/queue.resource";
95
- const expectedDescription = "globals.resources.queue.resource";
95
+ const expectedDescription = "src.globals.resources.queue.resource";
96
96
  expect(generateCallerIdFromFile(filePath).description).toEqual(
97
97
  expectedDescription
98
98
  );
@@ -101,7 +101,7 @@ describe("generateCallerIdFromFile", () => {
101
101
  it("should handle file names with multiple dots", () => {
102
102
  const filePath =
103
103
  "/Users/theodordiaconu/Projects/runner/src/globals/resources/queue.resource.test.ts";
104
- const expectedDescription = "globals.resources.queue.resource.test";
104
+ const expectedDescription = "src.globals.resources.queue.resource.test";
105
105
  expect(generateCallerIdFromFile(filePath).description).toEqual(
106
106
  expectedDescription
107
107
  );
@@ -150,7 +150,7 @@ describe("generateCallerIdFromFile", () => {
150
150
 
151
151
  // Test case where 'src' is at the end, making relevantParts empty (triggers line 77 else branch)
152
152
  const result = generateCallerIdFromFile("/some/path/src", "suffix");
153
- expect(result.description).toEqual(".suffix");
153
+ expect(result.description).toEqual(".some.path.src.suffix");
154
154
  });
155
155
 
156
156
  it("should use fallback parts when no src or node_modules found", () => {
@@ -161,4 +161,19 @@ describe("generateCallerIdFromFile", () => {
161
161
  expectedDescription
162
162
  );
163
163
  });
164
+
165
+ it("should handle path equal to process.cwd() (relative root)", () => {
166
+ const expectedDescription = ".suffix";
167
+ expect(
168
+ generateCallerIdFromFile(process.cwd(), "suffix").description
169
+ ).toEqual(expectedDescription);
170
+ });
171
+
172
+ it("should handle path ending with node_modules (no relevant parts)", () => {
173
+ const path = `${process.cwd()}/node_modules`;
174
+ const expectedDescription = ".suffix";
175
+ expect(generateCallerIdFromFile(path, "suffix").description).toEqual(
176
+ expectedDescription
177
+ );
178
+ });
164
179
  });