@hydranium/conformance 1.0.0-next.27 → 1.0.0-next.270

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":"index.js","sourceRoot":"","sources":["../../src/data/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/data/index.ts"],"names":[],"mappings":"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"}
@@ -20,7 +20,12 @@ export interface GlspConformanceDriver<TAction> extends Harness {
20
20
  start(): Promise<void>;
21
21
  /** Send an action to the server. Fire-and-forget (GLSP `process` is `void`). */
22
22
  dispatch(action: TAction): void;
23
- /** Resolve with the next captured action whose `kind` matches; reject on timeout. */
23
+ /**
24
+ * Resolve with the next action whose `kind` matches and that arrived after
25
+ * the last {@link dispatch}, or since `start` before any; reject on timeout.
26
+ * Only after the dispatch, so an action an earlier step sent cannot pass for
27
+ * the answer to this one.
28
+ */
24
29
  nextAction<T extends TAction = TAction>(kind: string, timeoutMs?: number): Promise<T>;
25
30
  }
26
31
  /**
@@ -43,7 +48,18 @@ export interface GlspCreateOperationSpec<TAction, TDriver extends GlspConformanc
43
48
  * loaded.
44
49
  */
45
50
  readonly action: (driver: TDriver) => TAction;
46
- /** The action kind the server settles the operation with (e.g. a re-`RequestBounds` for client-laid-out diagrams). */
51
+ /**
52
+ * The action kind the server settles the operation with (e.g. a
53
+ * re-`RequestBounds` for client-laid-out diagrams).
54
+ *
55
+ * The kit also waits for the operation's receipt: GLSP's
56
+ * `OperationActionHandler` submits every operation that ran with reason
57
+ * `'operation'`, and `ModelSubmissionHandler` ends that submission with a
58
+ * `setDirtyState` carrying it. A declined operation sends none,
59
+ * so an action of this kind from something else, such as a late submission
60
+ * of the load, cannot pass for the operation's. The driver's session must
61
+ * receive `setDirtyState`.
62
+ */
47
63
  readonly expectedResponseKind: string;
48
64
  /**
49
65
  * Returns whether the source model gained the element — the adopter reads its
@@ -59,8 +75,12 @@ export interface GlspCreateOperationSpec<TAction, TDriver extends GlspConformanc
59
75
  * fixture to its input document, so a fixture whose input was MUTATED by an
60
76
  * earlier check silently expects the wrong number. Give each check pristine
61
77
  * input, or take the delta route above.
78
+ *
79
+ * May answer asynchronously. It runs once the response kind has arrived, and
80
+ * a write observed from another process, a `workspace/applyEdit` say, can
81
+ * arrive after that.
62
82
  */
63
- readonly expectMutated: (driver: TDriver) => boolean;
83
+ readonly expectMutated: (driver: TDriver) => boolean | Promise<boolean>;
64
84
  }
65
85
  /**
66
86
  * Per-diagram-type GLSP fixture, generic over the adopter action type and the
@@ -109,7 +129,7 @@ export interface GlspConformanceOptions<TAction, TDriver extends GlspConformance
109
129
  readonly connect: () => TDriver | Promise<TDriver>;
110
130
  /** Per-diagram-type fixtures. */
111
131
  readonly diagrams: ReadonlyArray<GlspFixture<TAction, TDriver>>;
112
- /** Suite title override. Default `'conformance: glsp'`. */
132
+ /** Suite title override. Default `'glsp conformance'`. */
113
133
  readonly suiteTitle?: string;
114
134
  }
115
135
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/glsp/index.ts"],"names":[],"mappings":"AAAA;;;;;;;kFAOkF;AAoBlF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,WAAW,qBAAqB,CAAC,OAAO,CAAE,SAAQ,OAAO;IAC5D,uFAAuF;IACvF,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,gFAAgF;IAChF,QAAQ,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;IAChC,qFAAqF;IACrF,UAAU,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACxF;AAED;;;;GAIG;AACH,MAAM,WAAW,uBAAuB,CAAC,OAAO,EAAE,OAAO,SAAS,qBAAqB,CAAC,OAAO,CAAC;IAC7F;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC;IAC9C,sHAAsH;IACtH,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC;;;;;;;;;;;;;;OAcG;IACH,QAAQ,CAAC,aAAa,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC;CACvD;AAED;;;;;GAKG;AACH,MAAM,WAAW,WAAW,CAAC,OAAO,EAAE,OAAO,SAAS,qBAAqB,CAAC,OAAO,CAAC;IACjF;;;;;;;;OAQG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,gGAAgG;IAChG,QAAQ,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5D;;;;;;;;OAQG;IACH,QAAQ,CAAC,YAAY,EAAE,MAAM,OAAO,CAAC;IACrC,oGAAoG;IACpG,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC,6HAA6H;IAC7H,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,OAAO,CAAC;IACzD,oEAAoE;IACpE,QAAQ,CAAC,eAAe,CAAC,EAAE,uBAAuB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;CACvE;AAED,wCAAwC;AACxC,MAAM,WAAW,sBAAsB,CAAC,OAAO,EAAE,OAAO,SAAS,qBAAqB,CAAC,OAAO,CAAC;IAC5F;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACnD,iCAAiC;IACjC,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAChE,2DAA2D;IAC3D,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,SAAS,qBAAqB,CAAC,OAAO,CAAC,EACpF,OAAO,EAAE,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC,GACjD,gBAAgB,EAAE,CAoEpB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/glsp/index.ts"],"names":[],"mappings":"AAAA;;;;;;;kFAOkF;AAsBlF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAE3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,WAAW,qBAAqB,CAAC,OAAO,CAAE,SAAQ,OAAO;IAC5D,uFAAuF;IACvF,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,gFAAgF;IAChF,QAAQ,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;IAChC;;;;;OAKG;IACH,UAAU,CAAC,CAAC,SAAS,OAAO,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACxF;AAED;;;;GAIG;AACH,MAAM,WAAW,uBAAuB,CAAC,OAAO,EAAE,OAAO,SAAS,qBAAqB,CAAC,OAAO,CAAC;IAC7F;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC;IAC9C;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC;;;;;;;;;;;;;;;;;;OAkBG;IACH,QAAQ,CAAC,aAAa,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC1E;AAED;;;;;GAKG;AACH,MAAM,WAAW,WAAW,CAAC,OAAO,EAAE,OAAO,SAAS,qBAAqB,CAAC,OAAO,CAAC;IACjF;;;;;;;;OAQG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,gGAAgG;IAChG,QAAQ,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5D;;;;;;;;OAQG;IACH,QAAQ,CAAC,YAAY,EAAE,MAAM,OAAO,CAAC;IACrC,oGAAoG;IACpG,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC,6HAA6H;IAC7H,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,OAAO,CAAC;IACzD,oEAAoE;IACpE,QAAQ,CAAC,eAAe,CAAC,EAAE,uBAAuB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;CACvE;AAED,wCAAwC;AACxC,MAAM,WAAW,sBAAsB,CAAC,OAAO,EAAE,OAAO,SAAS,qBAAqB,CAAC,OAAO,CAAC;IAC5F;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACnD,iCAAiC;IACjC,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAChE,0DAA0D;IAC1D,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC/B;AAoCD;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,SAAS,qBAAqB,CAAC,OAAO,CAAC,EACpF,OAAO,EAAE,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC,GACjD,gBAAgB,EAAE,CAqEpB"}
package/lib/glsp/index.js CHANGED
@@ -11,7 +11,9 @@
11
11
  * head, generic over the adopter's action type `TAction`. The kit imports NO
12
12
  * `@eclipse-glsp/*` types: the FIXTURE supplies the native actions
13
13
  * (`requestModel()`, `createOperation.action()`) and the kit matches responses
14
- * by `kind` (a `string`) via the driver's `nextAction`.
14
+ * by `kind` (a `string`) via the driver's `nextAction`. The one field it reads
15
+ * beyond `kind` is the `reason` of the `setDirtyState` that is an operation's
16
+ * receipt.
15
17
  *
16
18
  * The driver port (`GlspConformanceDriver<TAction>`) is the minimal
17
19
  * `start` / `dispatch` / `nextAction` surface that `@hydranium/glsp-server/
@@ -23,6 +25,35 @@
23
25
  * its harness.
24
26
  */
25
27
  import assert from 'node:assert/strict';
28
+ import { describeError } from '@hydranium/protocol';
29
+ /** GLSP's `SetDirtyStateAction.KIND`, named here because the kit imports no GLSP type. */
30
+ const SET_DIRTY_STATE_KIND = 'setDirtyState';
31
+ /** The reason GLSP's `OperationActionHandler` submits an operation that ran with, which its dirty state carries. */
32
+ const OPERATION_REASON = 'operation';
33
+ function isOperationReceipt(action) {
34
+ return typeof action === 'object' && action !== null && 'reason' in action && action.reason === OPERATION_REASON;
35
+ }
36
+ /**
37
+ * Resolve once the operation's receipt arrives, passing over a dirty state
38
+ * with any other reason. Rejects with the wait's own failure, which may be a
39
+ * closed connection rather than a missing receipt.
40
+ */
41
+ async function nextOperationReceipt(driver) {
42
+ for (;;) {
43
+ let dirtyState;
44
+ try {
45
+ dirtyState = await driver.nextAction(SET_DIRTY_STATE_KIND);
46
+ }
47
+ catch (error) {
48
+ const reason = describeError(error);
49
+ throw new Error(`Waiting for the operation's receipt, a ${SET_DIRTY_STATE_KIND} with reason '${OPERATION_REASON}', failed: ${reason}. ` +
50
+ `If none arrived in time, either no operation ran or the session does not declare ${SET_DIRTY_STATE_KIND}.`, { cause: error });
51
+ }
52
+ if (isOperationReceipt(dirtyState)) {
53
+ return;
54
+ }
55
+ }
56
+ }
26
57
  /**
27
58
  * Build the GLSP check battery — per diagram type: `start()` resolves;
28
59
  * `RequestModel` responds with the expected kind (+ optional `expectResponse`
@@ -78,8 +109,9 @@ export function buildGlspChecks(options) {
78
109
  driver.dispatch(diagram.requestModel());
79
110
  await driver.nextAction(diagram.expectedResponseKind);
80
111
  driver.dispatch(operation.action(driver));
112
+ await nextOperationReceipt(driver);
81
113
  await driver.nextAction(operation.expectedResponseKind);
82
- assert.ok(operation.expectMutated(driver), 'expectMutated was false — the create operation did not mutate the source model');
114
+ assert.ok(await operation.expectMutated(driver), 'expectMutated was false — the create operation did not mutate the source model');
83
115
  }
84
116
  finally {
85
117
  driver.dispose();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/glsp/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/glsp/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,64 @@
1
+ /********************************************************************************
2
+ * Copyright (c) 2026 EclipseSource and others.
3
+ *
4
+ * This program and the accompanying materials are made available under the
5
+ * terms of the MIT License which is available in the project root.
6
+ *
7
+ * SPDX-License-Identifier: MIT
8
+ ********************************************************************************/
9
+ import type { GlspConformanceDriver } from '../index.js';
10
+ /** Configuration for {@link connectGlspSocketDriver}. */
11
+ export interface GlspSocketDriverOptions<TAction extends {
12
+ readonly kind: string;
13
+ } = {
14
+ readonly kind: string;
15
+ }> {
16
+ readonly port: number;
17
+ /** Defaults to `127.0.0.1`. */
18
+ readonly host?: string;
19
+ /** The diagram type the client session is opened for. */
20
+ readonly diagramType: string;
21
+ /**
22
+ * The action kinds this client handles, which the server routes back to it.
23
+ * Declare every kind the server sends during the checks: one it sends that
24
+ * neither side handles fails the server's dispatch, and the session gets a
25
+ * rejected request or an error message instead.
26
+ */
27
+ readonly clientActionKinds: readonly string[];
28
+ /** Defaults to a fresh id per driver, so drivers sharing one server never share a session. */
29
+ readonly clientSessionId?: string;
30
+ readonly applicationId?: string;
31
+ /**
32
+ * The GLSP protocol version announced in `initialize`. The server refuses
33
+ * `initialize` unless it equals its own, so a server on a newer protocol
34
+ * needs this. Defaults to `1.0.0`.
35
+ */
36
+ readonly protocolVersion?: string;
37
+ /**
38
+ * The client's reply to a received action, sent back to the server, or
39
+ * `undefined` for none. A server that lays out on the client finishes a
40
+ * `requestModel` only once its `requestBounds` is answered with
41
+ * `computedBounds`, so a load without this stops half way. A reply is not a
42
+ * dispatch, as the GLSP client's own is an automatic answer to the server,
43
+ * so it leaves the point `nextAction` matches from where it was. A throw
44
+ * fails every pending and later wait with it.
45
+ */
46
+ readonly respond?: (action: TAction) => TAction | undefined;
47
+ /** Default bound for {@link GlspConformanceDriver.nextAction}, and the bound on the TCP connect and on each `start()` request. */
48
+ readonly timeoutMs?: number;
49
+ }
50
+ /** A {@link GlspConformanceDriver} over a socket, with the actions it received. */
51
+ export interface GlspSocketDriver<TAction extends {
52
+ readonly kind: string;
53
+ }> extends GlspConformanceDriver<TAction> {
54
+ /** Every action the server sent to this session, in arrival order; append-only. */
55
+ readonly actions: ReadonlyArray<TAction>;
56
+ }
57
+ /**
58
+ * Open a TCP connection to a GLSP server and wrap it as a driver. The session is
59
+ * not initialised until the kit calls `start()`.
60
+ */
61
+ export declare function connectGlspSocketDriver<TAction extends {
62
+ readonly kind: string;
63
+ }>(options: GlspSocketDriverOptions<TAction>): Promise<GlspSocketDriver<TAction>>;
64
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/glsp/node/index.ts"],"names":[],"mappings":"AAAA;;;;;;;kFAOkF;AAclF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAMzD,yDAAyD;AACzD,MAAM,WAAW,uBAAuB,CAAC,OAAO,SAAS;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE;IAC3G,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,+BAA+B;IAC/B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,yDAAyD;IACzD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B;;;;;OAKG;IACH,QAAQ,CAAC,iBAAiB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9C,8FAA8F;IAC9F,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC;;;;OAIG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC;;;;;;;;OAQG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,GAAG,SAAS,CAAC;IAC5D,kIAAkI;IAClI,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,mFAAmF;AACnF,MAAM,WAAW,gBAAgB,CAAC,OAAO,SAAS;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAE,SAAQ,qBAAqB,CAAC,OAAO,CAAC;IAChH,mFAAmF;IACnF,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;CAC3C;AAgBD;;;GAGG;AACH,wBAAsB,uBAAuB,CAAC,OAAO,SAAS;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EACpF,OAAO,EAAE,uBAAuB,CAAC,OAAO,CAAC,GACzC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAqJpC"}
@@ -0,0 +1,195 @@
1
+ /********************************************************************************
2
+ * Copyright (c) 2026 EclipseSource and others.
3
+ *
4
+ * This program and the accompanying materials are made available under the
5
+ * terms of the MIT License which is available in the project root.
6
+ *
7
+ * SPDX-License-Identifier: MIT
8
+ ********************************************************************************/
9
+ /**
10
+ * The `@hydranium/conformance/glsp/node` subpath: a socket driver for the
11
+ * {@link GlspConformanceDriver} port, over a real TCP socket, for proving a
12
+ * deployed GLSP server rather than a container built in the test process.
13
+ *
14
+ * It speaks GLSP's JSON-RPC by method name, so like the rest of the kit it names
15
+ * no `@eclipse-glsp/*` type and the adopter's fixtures supply every action.
16
+ */
17
+ import { randomUUID } from 'node:crypto';
18
+ import * as net from 'node:net';
19
+ import { createMessageConnection, SocketMessageReader, SocketMessageWriter } from 'vscode-jsonrpc/node';
20
+ const DEFAULT_PROTOCOL_VERSION = '1.0.0';
21
+ const DEFAULT_TIMEOUT_MS = 15_000;
22
+ function isActionMessage(value) {
23
+ if (typeof value !== 'object' || value === null || !('clientId' in value) || !('action' in value)) {
24
+ return false;
25
+ }
26
+ const { action } = value;
27
+ return typeof action === 'object' && action !== null && 'kind' in action && typeof action.kind === 'string';
28
+ }
29
+ /**
30
+ * Open a TCP connection to a GLSP server and wrap it as a driver. The session is
31
+ * not initialised until the kit calls `start()`.
32
+ */
33
+ export async function connectGlspSocketDriver(options) {
34
+ const timeoutMs = options.timeoutMs ?? DEFAULT_TIMEOUT_MS;
35
+ const clientSessionId = options.clientSessionId ?? `glsp-socket-${randomUUID()}`;
36
+ const socket = await openSocket(options.host ?? '127.0.0.1', options.port, timeoutMs);
37
+ const connection = createMessageConnection(new SocketMessageReader(socket), new SocketMessageWriter(socket), console);
38
+ const actions = [];
39
+ const send = (action) => {
40
+ // Fire-and-forget, so neither a closed connection, which throws here, nor
41
+ // a failed write reaches the caller; the wait that follows reports it.
42
+ try {
43
+ connection.sendNotification('process', { clientId: clientSessionId, action }).catch(() => undefined);
44
+ }
45
+ catch {
46
+ // Already reported by the closed state every later wait reads.
47
+ }
48
+ };
49
+ const consumed = new WeakSet();
50
+ // Where the last dispatch fell in `actions`; a wait matches only from here.
51
+ let dispatchedAt = 0;
52
+ const waiters = [];
53
+ // Why no awaited action can arrive any more, once something ended the session.
54
+ let ended;
55
+ // A wait still pending when the session ends fails at once, naming why,
56
+ // rather than at its timeout reading like a declined operation.
57
+ function end(reason, cause) {
58
+ ended ??= { reason, cause };
59
+ for (const waiter of waiters.splice(0)) {
60
+ waiter.fail(new Error(`${ended.reason} while waiting for '${waiter.kind}'`, { cause: ended.cause }));
61
+ }
62
+ }
63
+ const closedReason = `GLSP connection to session ${clientSessionId} closed`;
64
+ connection.onClose(() => end(closedReason));
65
+ connection.onNotification('process', (message) => {
66
+ if (!isActionMessage(message) || message.clientId !== clientSessionId) {
67
+ return;
68
+ }
69
+ // The fixture's own action type; the guard has checked the one field read here.
70
+ const action = message.action;
71
+ actions.push(action);
72
+ const index = waiters.findIndex(waiter => waiter.kind === action.kind);
73
+ if (index >= 0) {
74
+ const [waiter] = waiters.splice(index, 1);
75
+ consumed.add(action);
76
+ waiter.resolve(action);
77
+ }
78
+ // The connection only logs a handler's throw, so a fixture bug would
79
+ // otherwise surface as an unrelated wait timing out.
80
+ let reply;
81
+ try {
82
+ reply = options.respond?.(action);
83
+ }
84
+ catch (error) {
85
+ end(`respond threw on '${action.kind}' (${String(error)})`, error);
86
+ return;
87
+ }
88
+ if (reply) {
89
+ send(reply);
90
+ }
91
+ });
92
+ connection.listen();
93
+ let disposed = false;
94
+ return {
95
+ actions,
96
+ async start() {
97
+ // Bounded, so a server that accepts the socket and never answers fails
98
+ // naming the request, when the runner's own timeout is the longer one.
99
+ await within(connection.sendRequest('initialize', {
100
+ applicationId: options.applicationId ?? 'hydranium-conformance',
101
+ protocolVersion: options.protocolVersion ?? DEFAULT_PROTOCOL_VERSION
102
+ }), timeoutMs, 'initialize');
103
+ await within(connection.sendRequest('initializeClientSession', {
104
+ clientSessionId,
105
+ diagramType: options.diagramType,
106
+ clientActionKinds: options.clientActionKinds
107
+ }), timeoutMs, 'initializeClientSession');
108
+ },
109
+ dispatch(action) {
110
+ dispatchedAt = actions.length;
111
+ send(action);
112
+ },
113
+ nextAction(kind, waitMs = timeoutMs) {
114
+ const existing = actions.find((action, index) => index >= dispatchedAt && action.kind === kind && !consumed.has(action));
115
+ if (existing) {
116
+ consumed.add(existing);
117
+ return Promise.resolve(existing);
118
+ }
119
+ if (ended) {
120
+ return Promise.reject(new Error(`${ended.reason}; no '${kind}' action can arrive`, { cause: ended.cause }));
121
+ }
122
+ return new Promise((resolve, reject) => {
123
+ const waiter = {
124
+ kind,
125
+ resolve: (action) => {
126
+ clearTimeout(timer);
127
+ resolve(action);
128
+ },
129
+ fail: (error) => {
130
+ clearTimeout(timer);
131
+ reject(error);
132
+ }
133
+ };
134
+ const timer = setTimeout(() => {
135
+ const at = waiters.indexOf(waiter);
136
+ if (at >= 0) {
137
+ waiters.splice(at, 1);
138
+ }
139
+ // Naming what did arrive tells an operation the server declined
140
+ // (a status or nothing at all) apart from a transport that hangs,
141
+ // split at the last dispatch, before which no match counts.
142
+ const kindsIn = (from, to) => actions
143
+ .slice(from, to)
144
+ .map(action => action.kind)
145
+ .join(', ') || 'nothing';
146
+ const seen = dispatchedAt === 0
147
+ ? `received: ${kindsIn(0)}`
148
+ : `received before the last dispatch, which a wait does not match: ${kindsIn(0, dispatchedAt)}; since: ${kindsIn(dispatchedAt)}`;
149
+ reject(new Error(`No '${kind}' action within ${waitMs}ms on session ${clientSessionId}; ${seen}`));
150
+ }, waitMs);
151
+ waiters.push(waiter);
152
+ });
153
+ },
154
+ dispose() {
155
+ if (disposed) {
156
+ return;
157
+ }
158
+ disposed = true;
159
+ // A disposed connection fires no close event, so the waits end here.
160
+ end(closedReason);
161
+ connection.dispose();
162
+ socket.destroy();
163
+ }
164
+ };
165
+ }
166
+ function within(request, timeoutMs, method) {
167
+ return new Promise((resolve, reject) => {
168
+ const timer = setTimeout(() => reject(new Error(`GLSP server did not answer '${method}' within ${timeoutMs}ms`)), timeoutMs);
169
+ request.then(value => {
170
+ clearTimeout(timer);
171
+ resolve(value);
172
+ }, (error) => {
173
+ clearTimeout(timer);
174
+ reject(error);
175
+ });
176
+ });
177
+ }
178
+ function openSocket(host, port, timeoutMs) {
179
+ return new Promise((resolve, reject) => {
180
+ const socket = net.createConnection({ host, port });
181
+ const timer = setTimeout(() => {
182
+ socket.destroy();
183
+ reject(new Error(`TCP connect to GLSP server at ${host}:${port} timed out after ${timeoutMs}ms`));
184
+ }, timeoutMs);
185
+ socket.once('connect', () => {
186
+ clearTimeout(timer);
187
+ resolve(socket);
188
+ });
189
+ socket.once('error', error => {
190
+ clearTimeout(timer);
191
+ reject(error);
192
+ });
193
+ });
194
+ }
195
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/glsp/node/index.ts"],"names":[],"mappings":"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"}
package/lib/jest/index.js CHANGED
@@ -38,7 +38,7 @@ const jestRunner = {
38
38
  * grammar-bearing per language) and a ran-vs-skipped summary.
39
39
  */
40
40
  export function runDataConformance(options) {
41
- emitConformanceSuite(jestRunner, options.suiteTitle ?? 'conformance: data-server', buildDataChecks(options));
41
+ emitConformanceSuite(jestRunner, options.suiteTitle ?? 'data-server conformance', buildDataChecks(options));
42
42
  }
43
43
  /**
44
44
  * Run the LSP conformance battery against an adopter's live server under Jest.
@@ -46,7 +46,7 @@ export function runDataConformance(options) {
46
46
  * per language) and a ran-vs-skipped summary.
47
47
  */
48
48
  export function runLspConformance(options) {
49
- emitConformanceSuite(jestRunner, options.suiteTitle ?? 'conformance: lsp', buildLspChecks(options));
49
+ emitConformanceSuite(jestRunner, options.suiteTitle ?? 'lsp conformance', buildLspChecks(options));
50
50
  }
51
51
  /**
52
52
  * Run the GLSP conformance battery against an adopter's live diagram server
@@ -54,6 +54,6 @@ export function runLspConformance(options) {
54
54
  * a ran-vs-skipped summary.
55
55
  */
56
56
  export function runGlspConformance(options) {
57
- emitConformanceSuite(jestRunner, options.suiteTitle ?? 'conformance: glsp', buildGlspChecks(options));
57
+ emitConformanceSuite(jestRunner, options.suiteTitle ?? 'glsp conformance', buildGlspChecks(options));
58
58
  }
59
59
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/jest/index.ts"],"names":[],"mappings":"AAAA;;;;;;;kFAOkF;AAElF;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAEvD,OAAO,EAA0B,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AACvF,OAAO,EAAE,eAAe,EAA+B,MAAM,kBAAkB,CAAC;AAChF,OAAO,EAAE,cAAc,EAA8B,MAAM,iBAAiB,CAAC;AAC7E,OAAO,EAAE,eAAe,EAA2D,MAAM,kBAAkB,CAAC;AAc5G,8EAA8E;AAC9E,MAAM,UAAU,GAAsB;IACnC,QAAQ,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACtD,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;IACpC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC;IAC5C,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;CAC9B,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAC/B,OAAuD;IAEvD,oBAAoB,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,0BAA0B,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;AAChH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAA8B;IAC7D,oBAAoB,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,kBAAkB,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;AACvG,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAC/B,OAAiD;IAEjD,oBAAoB,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,mBAAmB,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;AACzG,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/jest/index.ts"],"names":[],"mappings":"AAAA;;;;;;;kFAOkF;AAElF;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAEvD,OAAO,EAA0B,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AACvF,OAAO,EAAE,eAAe,EAA+B,MAAM,kBAAkB,CAAC;AAChF,OAAO,EAAE,cAAc,EAA8B,MAAM,iBAAiB,CAAC;AAC7E,OAAO,EAAE,eAAe,EAA2D,MAAM,kBAAkB,CAAC;AAc5G,8EAA8E;AAC9E,MAAM,UAAU,GAAsB;IACnC,QAAQ,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACtD,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;IACpC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC;IAC5C,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;CAC9B,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAC/B,OAAuD;IAEvD,oBAAoB,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,yBAAyB,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;AAC/G,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAA8B;IAC7D,oBAAoB,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,iBAAiB,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;AACtG,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAC/B,OAAiD;IAEjD,oBAAoB,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,kBAAkB,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;AACxG,CAAC"}
@@ -6,9 +6,20 @@
6
6
  *
7
7
  * SPDX-License-Identifier: MIT
8
8
  ********************************************************************************/
9
+ import type { Locale } from '@hydranium/protocol';
9
10
  import type { Harness } from '@hydranium/protocol/testing';
10
11
  import type { ConformanceCheck } from '../conformance-suite.js';
11
12
  import { type LanguageFixture } from '../model.js';
13
+ /**
14
+ * Structural minimum of the `initialize` params the kit sends — only `locale`,
15
+ * which is the one field a check needs to vary.
16
+ *
17
+ * A real `InitializeParams` is assignable to this, so a driver typed against
18
+ * upstream's shape satisfies the port with no adapter.
19
+ */
20
+ export interface LspConformanceInitializeParams {
21
+ readonly locale?: Locale;
22
+ }
12
23
  /** Structural minimum of an LSP `InitializeResult` — only the baseline capabilities the kit asserts. */
13
24
  export interface LspConformanceInitializeResult {
14
25
  readonly capabilities: {
@@ -41,8 +52,17 @@ export interface LspConformanceDiagnostic {
41
52
  * gives the kit the universal `dispose()` teardown.
42
53
  */
43
54
  export interface LspConformanceDriver extends Harness {
44
- /** Drive the `initialize` → `initialized` handshake; resolve with the (structurally-minimal) result. */
45
- initialize(): Promise<LspConformanceInitializeResult>;
55
+ /**
56
+ * Drive the `initialize` → `initialized` handshake; resolve with the
57
+ * (structurally-minimal) result.
58
+ *
59
+ * `params` is optional and every field in it is too, so a driver that ignores
60
+ * the argument entirely still satisfies this port — which is what keeps
61
+ * adding a field here from being a breaking change. `locale` is the reading
62
+ * user's language, declared by the client because only the client knows it;
63
+ * the render check below is the only caller that passes anything.
64
+ */
65
+ initialize(params?: LspConformanceInitializeParams): Promise<LspConformanceInitializeResult>;
46
66
  /** Send `didOpen` for `uri` with full `text` under `languageId`. */
47
67
  openDocument(uri: string, text: string, languageId: string, version?: number): void;
48
68
  /** Send `didChange` for `uri` as a single full-text replacement at `version`. */
@@ -68,7 +88,7 @@ export interface LspConformanceOptions {
68
88
  readonly connect: () => LspConformanceDriver | Promise<LspConformanceDriver>;
69
89
  /** Per-language fixtures; the grammar-bearing checks run once per language. */
70
90
  readonly languages: ReadonlyArray<LanguageFixture>;
71
- /** Suite title override. Default `'conformance: lsp'`. */
91
+ /** Suite title override. Default `'lsp conformance'`. */
72
92
  readonly suiteTitle?: string;
73
93
  }
74
94
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lsp/index.ts"],"names":[],"mappings":"AAAA;;;;;;;kFAOkF;AAkBlF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,KAAK,eAAe,EAAiC,MAAM,aAAa,CAAC;AAElF,wGAAwG;AACxG,MAAM,WAAW,8BAA8B;IAC5C,QAAQ,CAAC,YAAY,EAAE;QACpB,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;QACpC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,CAAC;KACxC,CAAC;CACJ;AAED,gGAAgG;AAChG,MAAM,WAAW,4BAA4B;IAC1C,QAAQ,CAAC,KAAK,EAAE,SAAS,OAAO,EAAE,CAAC;CACrC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,wBAAwB;IACtC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CACxD;AAkBD;;;;;;;GAOG;AACH,MAAM,WAAW,oBAAqB,SAAQ,OAAO;IAClD,wGAAwG;IACxG,UAAU,IAAI,OAAO,CAAC,8BAA8B,CAAC,CAAC;IACtD,oEAAoE;IACpE,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpF,iFAAiF;IACjF,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACjE,uGAAuG;IACvG,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,wBAAwB,EAAE,CAAC,CAAC;IAC/F,8DAA8D;IAC9D,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;IAC9G,6CAA6C;IAC7C,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B;AAED,uCAAuC;AACvC,MAAM,WAAW,qBAAqB;IACnC;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAC7E,+EAA+E;IAC/E,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;IACnD,0DAA0D;IAC1D,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC/B;AAKD;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,gBAAgB,EAAE,CA2JjF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lsp/index.ts"],"names":[],"mappings":"AAAA;;;;;;;kFAOkF;AAmBlF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAyB,KAAK,eAAe,EAAiC,MAAM,aAAa,CAAC;AAEzG;;;;;;GAMG;AACH,MAAM,WAAW,8BAA8B;IAC5C,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,wGAAwG;AACxG,MAAM,WAAW,8BAA8B;IAC5C,QAAQ,CAAC,YAAY,EAAE;QACpB,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;QACpC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,CAAC;KACxC,CAAC;CACJ;AAED,gGAAgG;AAChG,MAAM,WAAW,4BAA4B;IAC1C,QAAQ,CAAC,KAAK,EAAE,SAAS,OAAO,EAAE,CAAC;CACrC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,wBAAwB;IACtC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CACxD;AAkBD;;;;;;;GAOG;AACH,MAAM,WAAW,oBAAqB,SAAQ,OAAO;IAClD;;;;;;;;;OASG;IACH,UAAU,CAAC,MAAM,CAAC,EAAE,8BAA8B,GAAG,OAAO,CAAC,8BAA8B,CAAC,CAAC;IAC7F,oEAAoE;IACpE,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpF,iFAAiF;IACjF,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACjE,uGAAuG;IACvG,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,wBAAwB,EAAE,CAAC,CAAC;IAC/F,8DAA8D;IAC9D,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;IAC9G,6CAA6C;IAC7C,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B;AAED,uCAAuC;AACvC,MAAM,WAAW,qBAAqB;IACnC;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,oBAAoB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAC7E,+EAA+E;IAC/E,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;IACnD,yDAAyD;IACzD,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC/B;AAKD;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,gBAAgB,EAAE,CAkNjF"}