@eclipse-glsp/client 2.8.0-next.12 → 2.8.0-next.14

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.
Files changed (26) hide show
  1. package/lib/base/model/glsp-model-source.d.ts +1 -1
  2. package/lib/base/model/glsp-model-source.d.ts.map +1 -1
  3. package/lib/features/tool-palette/tool-palette.d.ts.map +1 -1
  4. package/lib/features/tool-palette/tool-palette.js +2 -4
  5. package/lib/features/tool-palette/tool-palette.js.map +1 -1
  6. package/package.json +7 -7
  7. package/src/base/model/glsp-model-source.ts +1 -1
  8. package/src/features/tool-palette/tool-palette.ts +2 -4
  9. package/src/base/action-dispatcher.spec.ts +0 -366
  10. package/src/base/feedback/feedback-emitter.spec.ts +0 -176
  11. package/src/base/model/model-initialization-constraint.spec.ts +0 -95
  12. package/src/base/selection-service.spec.ts +0 -318
  13. package/src/default-modules.spec.ts +0 -56
  14. package/src/features/bounds/freeform-layout.spec.ts +0 -216
  15. package/src/features/bounds/hbox-layout.spec.ts +0 -170
  16. package/src/features/bounds/layouter-test-util.spec.ts +0 -127
  17. package/src/features/bounds/vbox-layout.spec.ts +0 -170
  18. package/src/features/change-bounds/point-position-updater.spec.ts +0 -81
  19. package/src/features/grid/grid-snapper.spec.ts +0 -30
  20. package/src/features/hints/type-hint-provider.spec.ts +0 -360
  21. package/src/features/layout/layout-elements-action.spec.ts +0 -426
  22. package/src/features/navigation/navigation-target-resolver.spec.ts +0 -56
  23. package/src/features/routing/sticky-manhattan-edge-router.spec.ts +0 -212
  24. package/src/features/tools/marquee-selection/marquee-behavior.spec.ts +0 -176
  25. package/src/features/validation/marker-navigator.spec.ts +0 -183
  26. package/src/utils/gmodel-util.spec.ts +0 -221
@@ -15,7 +15,7 @@
15
15
  ********************************************************************************/
16
16
  import { Action, ActionMessage, Disposable, DisposableCollection, DisposeClientSessionParameters, GLSPClient, GModelRootSchema, IActionDispatcher, ILogger, InitializeClientSessionParameters, InitializeResult, ModelSource, RequestAction, ResponseAction } from '@eclipse-glsp/sprotty';
17
17
  import { GLSPActionHandlerRegistry } from '../action-handler-registry';
18
- import { IDiagramOptions } from './diagram-loader';
18
+ import type { IDiagramOptions } from './diagram-loader';
19
19
  /**
20
20
  * A helper interface that allows the client to mark actions that have been received from the server.
21
21
  */
@@ -1 +1 @@
1
- {"version":3,"file":"glsp-model-source.d.ts","sourceRoot":"","sources":["../../../src/base/model/glsp-model-source.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EACH,MAAM,EACN,aAAa,EACb,UAAU,EACV,oBAAoB,EACpB,8BAA8B,EAC9B,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,OAAO,EACP,iCAAiC,EACjC,gBAAgB,EAChB,WAAW,EAEX,aAAa,EACb,cAAc,EAEjB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD;;GAEG;AACH,MAAM,WAAW,YAAa,SAAQ,MAAM;IACxC,oBAAoB,EAAE,IAAI,CAAC;CAC9B;AAED,yBAAiB,YAAY,CAAC;IAC1B,SAAgB,EAAE,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,YAAY,CAE1D;IAED;;;OAGG;IACH,SAAgB,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAEzC;CACJ;AAED;;;GAGG;AACH,MAAM,WAAW,cAAe,SAAQ,MAAM;IAC1C,sBAAsB,EAAE,IAAI,CAAC;CAChC;AAED,yBAAiB,cAAc,CAAC;IAC5B,SAAgB,EAAE,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,YAAY,CAE1D;IAED;;;OAGG;IACH,SAAgB,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,cAAc,CAGpE;CACJ;AAED;;;;;;;;;GASG;AACH,qBACa,eAAgB,SAAQ,WAAY,YAAW,UAAU;IAElE,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC;IAG1B,SAAS,CAAC,OAAO,EAAE,eAAe,CAAC;IAEnC,SAAiB,gBAAgB,EAAE,iBAAiB,CAAC;IAErD,SAAS,CAAC,SAAS,uBAA8B;IACjD,QAAQ,EAAE,MAAM,CAAC;IAEjB,SAAS,CAAC,YAAY,EAAE,gBAAgB,CAAC;IACzC,SAAS,CAAC,QAAQ,EAAE,yBAAyB,CAAC;IAC9C,SAAS,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;IAElC,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,SAAS,IAAI,MAAM,GAAG,SAAS,CAElC;IAED;;;;;;;OAOG;IACH,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBhD,SAAS,CAAC,uCAAuC,CAAC,iBAAiB,EAAE,gBAAgB,GAAG,iCAAiC;IASzH,SAAS,CAAC,oCAAoC,IAAI,8BAA8B;IAMhF,SAAS,CAAC,qBAAqB,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,IAAI;IAQzE,SAAS,CAAC,eAAe,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;cAevC,mBAAmB,CAAC,MAAM,EAAE,aAAa,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBzF,SAAS,CAAC,oBAAoB,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI;IAIrD,UAAU,CAAC,QAAQ,EAAE,yBAAyB,GAAG,IAAI;IAU9D,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAQ5B,SAAS,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAa/C,SAAS,CAAC,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAIxD,WAAW,CAAC,OAAO,EAAE,gBAAgB,GAAG,gBAAgB;IAUxD,IAAa,KAAK,IAAI,gBAAgB,CAErC;IAGD,OAAO,IAAI,IAAI;CAGlB"}
1
+ {"version":3,"file":"glsp-model-source.d.ts","sourceRoot":"","sources":["../../../src/base/model/glsp-model-source.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EACH,MAAM,EACN,aAAa,EACb,UAAU,EACV,oBAAoB,EACpB,8BAA8B,EAC9B,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,OAAO,EACP,iCAAiC,EACjC,gBAAgB,EAChB,WAAW,EAEX,aAAa,EACb,cAAc,EAEjB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,YAAa,SAAQ,MAAM;IACxC,oBAAoB,EAAE,IAAI,CAAC;CAC9B;AAED,yBAAiB,YAAY,CAAC;IAC1B,SAAgB,EAAE,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,YAAY,CAE1D;IAED;;;OAGG;IACH,SAAgB,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAEzC;CACJ;AAED;;;GAGG;AACH,MAAM,WAAW,cAAe,SAAQ,MAAM;IAC1C,sBAAsB,EAAE,IAAI,CAAC;CAChC;AAED,yBAAiB,cAAc,CAAC;IAC5B,SAAgB,EAAE,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,YAAY,CAE1D;IAED;;;OAGG;IACH,SAAgB,IAAI,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,cAAc,CAGpE;CACJ;AAED;;;;;;;;;GASG;AACH,qBACa,eAAgB,SAAQ,WAAY,YAAW,UAAU;IAElE,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC;IAG1B,SAAS,CAAC,OAAO,EAAE,eAAe,CAAC;IAEnC,SAAiB,gBAAgB,EAAE,iBAAiB,CAAC;IAErD,SAAS,CAAC,SAAS,uBAA8B;IACjD,QAAQ,EAAE,MAAM,CAAC;IAEjB,SAAS,CAAC,YAAY,EAAE,gBAAgB,CAAC;IACzC,SAAS,CAAC,QAAQ,EAAE,yBAAyB,CAAC;IAC9C,SAAS,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;IAElC,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,SAAS,IAAI,MAAM,GAAG,SAAS,CAElC;IAED;;;;;;;OAOG;IACH,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBhD,SAAS,CAAC,uCAAuC,CAAC,iBAAiB,EAAE,gBAAgB,GAAG,iCAAiC;IASzH,SAAS,CAAC,oCAAoC,IAAI,8BAA8B;IAMhF,SAAS,CAAC,qBAAqB,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,IAAI;IAQzE,SAAS,CAAC,eAAe,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;cAevC,mBAAmB,CAAC,MAAM,EAAE,aAAa,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBzF,SAAS,CAAC,oBAAoB,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI;IAIrD,UAAU,CAAC,QAAQ,EAAE,yBAAyB,GAAG,IAAI;IAU9D,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAQ5B,SAAS,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAa/C,SAAS,CAAC,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAIxD,WAAW,CAAC,OAAO,EAAE,gBAAgB,GAAG,gBAAgB;IAUxD,IAAa,KAAK,IAAI,gBAAgB,CAErC;IAGD,OAAO,IAAI,IAAI;CAGlB"}
@@ -1 +1 @@
1
- {"version":3,"file":"tool-palette.d.ts","sourceRoot":"","sources":["../../../src/features/tool-palette/tool-palette.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-palette.d.ts","sourceRoot":"","sources":["../../../src/features/tool-palette/tool-palette.ts"],"names":[],"mappings":"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"}
@@ -533,11 +533,9 @@ function createToolGroup(item) {
533
533
  return group;
534
534
  }
535
535
  function changeCSSClass(element, css) {
536
- element.classList.contains(css) ? element.classList.remove(css) : element.classList.add(css);
536
+ element.classList.toggle(css);
537
537
  }
538
538
  function changeCodiconClass(element, codiconId) {
539
- element.classList.contains((0, sprotty_1.codiconCSSClasses)(codiconId)[1])
540
- ? element.classList.remove((0, sprotty_1.codiconCSSClasses)(codiconId)[1])
541
- : element.classList.add((0, sprotty_1.codiconCSSClasses)(codiconId)[1]);
539
+ element.classList.toggle((0, sprotty_1.codiconCSSClasses)(codiconId)[1]);
542
540
  }
543
541
  //# sourceMappingURL=tool-palette.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tool-palette.js","sourceRoot":"","sources":["../../../src/features/tool-palette/tool-palette.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-palette.js","sourceRoot":"","sources":["../../../src/features/tool-palette/tool-palette.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eclipse-glsp/client",
3
- "version": "2.8.0-next.12",
3
+ "version": "2.8.0-next.14",
4
4
  "description": "A sprotty-based client for GLSP",
5
5
  "keywords": [
6
6
  "eclipse",
@@ -33,7 +33,10 @@
33
33
  "files": [
34
34
  "lib",
35
35
  "src",
36
- "css"
36
+ "css",
37
+ "!**/*.spec.ts",
38
+ "!**/*.spec.tsx",
39
+ "!**/test/**"
37
40
  ],
38
41
  "dependencies": {
39
42
  "@vscode/codicons": "^0.0.44",
@@ -41,7 +44,7 @@
41
44
  "file-saver": "^2.0.5",
42
45
  "snabbdom": "~3.5.1",
43
46
  "vscode-jsonrpc": "8.2.0",
44
- "@eclipse-glsp/sprotty": "2.8.0-next.12"
47
+ "@eclipse-glsp/sprotty": "2.8.0-next.14"
45
48
  },
46
49
  "devDependencies": {
47
50
  "@types/file-saver": "^2.0.5"
@@ -55,12 +58,9 @@
55
58
  },
56
59
  "scripts": {
57
60
  "build": "tsc -b",
58
- "clean": "rimraf lib *.tsbuildinfo coverage .nyc_output",
61
+ "clean": "rimraf lib *.tsbuildinfo coverage",
59
62
  "generate:index": "glsp generateIndex src -f -s",
60
63
  "lint": "eslint ./src",
61
- "test": "mocha --config ../../.mocharc \"./src/**/*.spec.?(ts|tsx)\"",
62
- "test:ci": "pnpm test --reporter mocha-ctrf-json-reporter",
63
- "test:coverage": "nyc pnpm test",
64
64
  "watch": "tsc -w"
65
65
  }
66
66
  }
@@ -34,7 +34,7 @@ import {
34
34
  } from '@eclipse-glsp/sprotty';
35
35
  import { inject, injectable, preDestroy } from 'inversify';
36
36
  import { GLSPActionHandlerRegistry } from '../action-handler-registry';
37
- import { IDiagramOptions } from './diagram-loader';
37
+ import type { IDiagramOptions } from './diagram-loader';
38
38
 
39
39
  /**
40
40
  * A helper interface that allows the client to mark actions that have been received from the server.
@@ -580,11 +580,9 @@ export function createToolGroup(item: PaletteItem): HTMLElement {
580
580
  }
581
581
 
582
582
  export function changeCSSClass(element: Element, css: string): void {
583
- element.classList.contains(css) ? element.classList.remove(css) : element.classList.add(css);
583
+ element.classList.toggle(css);
584
584
  }
585
585
 
586
586
  export function changeCodiconClass(element: Element, codiconId: string): void {
587
- element.classList.contains(codiconCSSClasses(codiconId)[1])
588
- ? element.classList.remove(codiconCSSClasses(codiconId)[1])
589
- : element.classList.add(codiconCSSClasses(codiconId)[1]);
587
+ element.classList.toggle(codiconCSSClasses(codiconId)[1]);
590
588
  }
@@ -1,366 +0,0 @@
1
- /********************************************************************************
2
- * Copyright (c) 2023-2026 EclipseSource and others.
3
- *
4
- * This program and the accompanying materials are made available under the
5
- * terms of the Eclipse Public License v. 2.0 which is available at
6
- * http://www.eclipse.org/legal/epl-2.0.
7
- *
8
- * This Source Code may also be made available under the following Secondary
9
- * Licenses when the conditions for such availability set forth in the Eclipse
10
- * Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
- * with the GNU Classpath Exception which is available at
12
- * https://www.gnu.org/software/classpath/license.html.
13
- *
14
- * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
- ********************************************************************************/
16
- import { ActionHandlerRegistry, Deferred, IActionHandler, RequestAction, ResponseAction, TYPES } from '@eclipse-glsp/sprotty';
17
- import { expect } from 'chai';
18
- import { Container } from 'inversify';
19
-
20
- /** Yields to the event loop long enough for pending microtasks (and already-queued timers) to run. */
21
- const flushMicrotasks = (): Promise<void> => new Promise(resolve => setTimeout(resolve, 0));
22
-
23
- import { GLSPActionDispatcher } from './action-dispatcher';
24
- import { defaultModule } from './default.module';
25
- import { IDiagramOptions } from './model/diagram-loader';
26
-
27
- const container = new Container();
28
- container.load(defaultModule);
29
- container.bind(TYPES.IDiagramOptions).toConstantValue(<IDiagramOptions>(<unknown>{
30
- clientId: 'client1',
31
- diagramType: 'diagramType',
32
- glspClientProvider: async () => ({}) as any
33
- }));
34
- const registry = container.get(ActionHandlerRegistry);
35
- const actionDispatcher = container.get(GLSPActionDispatcher);
36
-
37
- let testHandlerDelay = 0;
38
- const testHandler: IActionHandler = {
39
- handle: action => {
40
- const request = action as RequestAction<ResponseAction>;
41
- new Promise(resolve => setTimeout(resolve, testHandlerDelay)).then(() =>
42
- actionDispatcher.dispatch({
43
- kind: 'response',
44
- responseId: request.requestId
45
- } as ResponseAction)
46
- );
47
- }
48
- };
49
- registry.register('request', testHandler);
50
-
51
- registry.register('response', { handle: () => {} });
52
- actionDispatcher.initialize().then(() => {
53
- actionDispatcher['blockUntil'] = undefined;
54
- });
55
-
56
- describe('GLSPActionDispatcher', () => {
57
- describe('requestUntil', () => {
58
- it('should resolve successfully if response dispatched within timeout', async () => {
59
- testHandlerDelay = 15;
60
- const requestAction = { kind: 'request', requestId: '' };
61
- const response = await actionDispatcher.requestUntil(requestAction, 150);
62
- expect(response?.responseId).to.be.equal(requestAction.requestId);
63
- });
64
- it('should resolve to `undefined` if no response dispatched within timeout & `rejectOnTimeout` flag is false', async () => {
65
- testHandlerDelay = 30;
66
- const requestAction = { kind: 'request', requestId: '' };
67
- const response = await actionDispatcher.requestUntil(requestAction, 5);
68
- expect(response).to.be.undefined;
69
- });
70
- it('should be rejected if no response dispatched within timeout & `rejectOnTimeout` flag is true', async () => {
71
- testHandlerDelay = 30;
72
- const requestAction = { kind: 'request', requestId: '' };
73
- const gotRejected = await actionDispatcher.requestUntil(requestAction, 5, true).then(
74
- () => false,
75
- () => true
76
- );
77
- expect(gotRejected, 'Response promise should be rejected').to.be.true;
78
- });
79
- it('should not leak timeout entries once the request settles', async () => {
80
- const timeouts = actionDispatcher['timeouts'] as Map<string, unknown>;
81
-
82
- // resolved-within-timeout path
83
- testHandlerDelay = 5;
84
- await actionDispatcher.requestUntil({ kind: 'request', requestId: '' }, 150);
85
- // timed-out path
86
- testHandlerDelay = 50;
87
- await actionDispatcher.requestUntil({ kind: 'request', requestId: '' }, 5);
88
- // missing-handler path: rejects the request, must still clear the timeout
89
- await actionDispatcher.requestUntil({ kind: 'noHandlerRequest', requestId: '' }, 50).catch(() => undefined);
90
- await flushMicrotasks();
91
-
92
- expect(timeouts.size, 'all timeout entries should be cleared after the requests settle').to.equal(0);
93
- });
94
- });
95
- describe('request & re-dispatch', () => {
96
- it('should be possible to re-dispatch the response of a `request` call', async () => {
97
- const requestAction = { kind: 'request', requestId: '' };
98
- const response = await actionDispatcher.request(requestAction);
99
- const dispatchSuccessful = await actionDispatcher.dispatch(response).then(
100
- () => true,
101
- err => false
102
- );
103
- expect(dispatchSuccessful, 'Promise of re-dispatch should resolve successfully').to.be.true;
104
- });
105
- });
106
- describe('async action handlers', () => {
107
- it('should handle async action handlers correctly', async () => {
108
- let handlerExecuted = false;
109
- const asyncHandler: IActionHandler = {
110
- handle: async () => {
111
- await new Promise(resolve => setTimeout(resolve, 10));
112
- handlerExecuted = true;
113
- }
114
- };
115
-
116
- registry.register('asyncTest1', asyncHandler);
117
- await actionDispatcher.dispatch({ kind: 'asyncTest1' });
118
-
119
- expect(handlerExecuted).to.be.true;
120
- });
121
-
122
- it('should invoke all handlers in one synchronous burst (parallel-start), without serializing on async ones', async () => {
123
- // asyncHandler1 (registered first) has the longer delay. Serial execution would yield [1, 2];
124
- // parallel-start lets the shorter handler finish first, yielding [2, 1].
125
- const executionOrder: number[] = [];
126
- const asyncHandler1: IActionHandler = {
127
- handle: async () => {
128
- await new Promise(resolve => setTimeout(resolve, 20));
129
- executionOrder.push(1);
130
- }
131
- };
132
- const asyncHandler2: IActionHandler = {
133
- handle: async () => {
134
- await new Promise(resolve => setTimeout(resolve, 10));
135
- executionOrder.push(2);
136
- }
137
- };
138
-
139
- registry.register('multiAsyncTest', asyncHandler1);
140
- registry.register('multiAsyncTest', asyncHandler2);
141
- await actionDispatcher.dispatch({ kind: 'multiAsyncTest' });
142
-
143
- expect(executionOrder).to.deep.equal([2, 1]);
144
- });
145
-
146
- it('should not let a slow async handler starve a synchronous sibling registered after it', async () => {
147
- // Sync handler registered after the gated async one must run during the burst, before the
148
- // async handler is released.
149
- const executionOrder: number[] = [];
150
- const gate = new Deferred<void>();
151
- const slowAsyncHandler: IActionHandler = {
152
- handle: async () => {
153
- await gate.promise;
154
- executionOrder.push(1);
155
- }
156
- };
157
- const syncHandler: IActionHandler = {
158
- handle: () => {
159
- executionOrder.push(2);
160
- }
161
- };
162
-
163
- registry.register('starveTest', slowAsyncHandler);
164
- registry.register('starveTest', syncHandler);
165
- const dispatched = actionDispatcher.dispatch({ kind: 'starveTest' });
166
-
167
- // Let the invocation burst run; the async handler is still gated.
168
- await flushMicrotasks();
169
- expect(executionOrder, 'sync sibling must run before the gated async handler resolves').to.deep.equal([2]);
170
-
171
- gate.resolve();
172
- await dispatched;
173
- expect(executionOrder).to.deep.equal([2, 1]);
174
- });
175
-
176
- it('should not let a never-resolving async handler starve a synchronous sibling', async () => {
177
- // A handler whose promise never resolves must not prevent other handlers from being invoked.
178
- const executionOrder: number[] = [];
179
- const stuckHandler: IActionHandler = {
180
- handle: () => new Promise<void>(() => undefined) // never resolves
181
- };
182
- const syncHandler: IActionHandler = {
183
- handle: () => {
184
- executionOrder.push(1);
185
- }
186
- };
187
-
188
- registry.register('stuckTest', stuckHandler);
189
- registry.register('stuckTest', syncHandler);
190
- // Intentionally not awaited: the dispatch promise never resolves because of the stuck handler.
191
- actionDispatcher.dispatch({ kind: 'stuckTest' });
192
-
193
- await flushMicrotasks();
194
- expect(executionOrder).to.deep.equal([1]);
195
- });
196
-
197
- it('should not deadlock when an async handler awaits a nested dispatch while a sibling is registered after it', async () => {
198
- // A serial loop would block the sibling behind the async handler that awaits a nested dispatch,
199
- // risking deadlock. Parallel-start invokes the sibling in the burst, so nothing waits its turn.
200
- // Order: 'B' (burst) -> 'sub' (nested) -> 'A' (async tail).
201
- const executionOrder: string[] = [];
202
- registry.register('nestedSub', {
203
- handle: () => {
204
- executionOrder.push('sub');
205
- }
206
- });
207
- const nestedDispatchHandler: IActionHandler = {
208
- handle: async () => {
209
- await actionDispatcher.dispatch({ kind: 'nestedSub' });
210
- executionOrder.push('A');
211
- }
212
- };
213
- const siblingHandler: IActionHandler = {
214
- handle: () => {
215
- executionOrder.push('B');
216
- }
217
- };
218
-
219
- registry.register('nestedTest', nestedDispatchHandler);
220
- registry.register('nestedTest', siblingHandler);
221
- await actionDispatcher.dispatch({ kind: 'nestedTest' });
222
-
223
- expect(executionOrder).to.deep.equal(['B', 'sub', 'A']);
224
- });
225
-
226
- it('should handle mixed sync and async handlers correctly', async () => {
227
- const executionOrder: number[] = [];
228
- const syncHandler: IActionHandler = {
229
- handle: () => {
230
- executionOrder.push(1);
231
- }
232
- };
233
- const asyncHandler: IActionHandler = {
234
- handle: async () => {
235
- await new Promise(resolve => setTimeout(resolve, 10));
236
- executionOrder.push(2);
237
- }
238
- };
239
-
240
- registry.register('mixedTest', syncHandler);
241
- registry.register('mixedTest', asyncHandler);
242
- await actionDispatcher.dispatch({ kind: 'mixedTest' });
243
-
244
- expect(executionOrder).to.deep.equal([1, 2]);
245
- });
246
-
247
- it('should propagate errors from async handlers', async () => {
248
- const errorMessage = 'Async handler error';
249
- const errorHandler: IActionHandler = {
250
- handle: async () => {
251
- await new Promise(resolve => setTimeout(resolve, 5));
252
- throw new Error(errorMessage);
253
- }
254
- };
255
-
256
- registry.register('errorTest1', errorHandler);
257
- let caughtError: Error | undefined;
258
- try {
259
- await actionDispatcher.dispatch({ kind: 'errorTest1' });
260
- } catch (error) {
261
- caughtError = error as Error;
262
- }
263
-
264
- expect(caughtError).to.not.be.undefined;
265
- expect(caughtError?.message).to.equal(errorMessage);
266
- });
267
-
268
- it('should handle errors in one handler without affecting others when multiple handlers are registered', async () => {
269
- const executionOrder: number[] = [];
270
- const successHandler: IActionHandler = {
271
- handle: async () => {
272
- await new Promise(resolve => setTimeout(resolve, 5));
273
- executionOrder.push(1);
274
- }
275
- };
276
- const errorHandler: IActionHandler = {
277
- handle: async () => {
278
- await new Promise(resolve => setTimeout(resolve, 5));
279
- throw new Error('Handler 2 error');
280
- }
281
- };
282
-
283
- registry.register('multiHandlerErrorTest', successHandler);
284
- registry.register('multiHandlerErrorTest', errorHandler);
285
-
286
- let caughtError: Error | undefined;
287
- try {
288
- await actionDispatcher.dispatch({ kind: 'multiHandlerErrorTest' });
289
- } catch (error) {
290
- caughtError = error as Error;
291
- }
292
-
293
- // First handler should have executed successfully
294
- expect(executionOrder).to.deep.equal([1]);
295
- // Error should have been thrown
296
- expect(caughtError).to.not.be.undefined;
297
- expect(caughtError?.message).to.equal('Handler 2 error');
298
- });
299
-
300
- it('should handle synchronous errors in handlers', async () => {
301
- const errorMessage = 'Sync handler error';
302
- const syncErrorHandler: IActionHandler = {
303
- handle: () => {
304
- throw new Error(errorMessage);
305
- }
306
- };
307
-
308
- registry.register('syncErrorTest', syncErrorHandler);
309
- let caughtError: Error | undefined;
310
- try {
311
- await actionDispatcher.dispatch({ kind: 'syncErrorTest' });
312
- } catch (error) {
313
- caughtError = error as Error;
314
- }
315
-
316
- expect(caughtError).to.not.be.undefined;
317
- expect(caughtError?.message).to.equal(errorMessage);
318
- });
319
-
320
- it('should handle async handlers that return actions', async () => {
321
- const dispatchedActions: string[] = [];
322
- const returningHandler: IActionHandler = {
323
- handle: async () => {
324
- await new Promise(resolve => setTimeout(resolve, 5));
325
- return { kind: 'returnedAction1' };
326
- }
327
- };
328
- const receivingHandler: IActionHandler = {
329
- handle: action => {
330
- dispatchedActions.push(action.kind);
331
- }
332
- };
333
-
334
- registry.register('asyncReturnTest', returningHandler);
335
- registry.register('returnedAction1', receivingHandler);
336
- await actionDispatcher.dispatch({ kind: 'asyncReturnTest' });
337
-
338
- expect(dispatchedActions).to.include('returnedAction1');
339
- });
340
-
341
- it('should wait for all async handlers to complete before resolving dispatch promise', async () => {
342
- let handler1Completed = false;
343
- let handler2Completed = false;
344
- const asyncHandler1: IActionHandler = {
345
- handle: async () => {
346
- await new Promise(resolve => setTimeout(resolve, 30));
347
- handler1Completed = true;
348
- }
349
- };
350
- const asyncHandler2: IActionHandler = {
351
- handle: async () => {
352
- await new Promise(resolve => setTimeout(resolve, 20));
353
- handler2Completed = true;
354
- }
355
- };
356
-
357
- registry.register('completionTest', asyncHandler1);
358
- registry.register('completionTest', asyncHandler2);
359
- await actionDispatcher.dispatch({ kind: 'completionTest' });
360
-
361
- // Both handlers should be completed when dispatch resolves
362
- expect(handler1Completed).to.be.true;
363
- expect(handler2Completed).to.be.true;
364
- });
365
- });
366
- });