@adminide-stack/extension-api 1.1.1-alpha.97 → 1.1.3-alpha.100

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 (99) hide show
  1. package/lib/connections/jsonrpc2/connection.js +10 -10
  2. package/lib/connections/jsonrpc2/connection.js.map +1 -1
  3. package/lib/connections/jsonrpc2/connection.test.d.ts +1 -0
  4. package/lib/connections/jsonrpc2/connection.test.js +452 -0
  5. package/lib/connections/jsonrpc2/connection.test.js.map +1 -0
  6. package/lib/connections/jsonrpc2/index.js +5 -1
  7. package/lib/connections/jsonrpc2/index.js.map +1 -1
  8. package/lib/connections/jsonrpc2/linkedMap.test.d.ts +1 -0
  9. package/lib/connections/jsonrpc2/linkedMap.test.js +62 -0
  10. package/lib/connections/jsonrpc2/linkedMap.test.js.map +1 -0
  11. package/lib/connections/jsonrpc2/transports/webWorker.js +2 -1
  12. package/lib/connections/jsonrpc2/transports/webWorker.js.map +1 -1
  13. package/lib/connections/proxy/index.js +5 -1
  14. package/lib/connections/proxy/index.js.map +1 -1
  15. package/lib/connections/proxy/proxy.test.d.ts +1 -0
  16. package/lib/connections/proxy/proxy.test.js +64 -0
  17. package/lib/connections/proxy/proxy.test.js.map +1 -0
  18. package/lib/connections/remote-rpc/browser-remote-rpc.js +4 -4
  19. package/lib/connections/remote-rpc/browser-remote-rpc.js.map +1 -1
  20. package/lib/connections/remote-rpc/browser-server-rpc.test.d.ts +1 -0
  21. package/lib/connections/remote-rpc/browser-server-rpc.test.js +323 -0
  22. package/lib/connections/remote-rpc/browser-server-rpc.test.js.map +1 -0
  23. package/lib/connections/remote-rpc/index.js +5 -1
  24. package/lib/connections/remote-rpc/index.js.map +1 -1
  25. package/lib/connections/remote-rpc/old-browser-remote-rpc.js +1 -1
  26. package/lib/connections/remote-rpc/old-browser-remote-rpc.js.map +1 -1
  27. package/lib/constants/index.js +5 -1
  28. package/lib/constants/index.js.map +1 -1
  29. package/lib/core/expr/evaluator.test.d.ts +1 -0
  30. package/lib/core/expr/evaluator.test.js +52 -0
  31. package/lib/core/expr/evaluator.test.js.map +1 -0
  32. package/lib/core/expr/index.js +5 -1
  33. package/lib/core/expr/index.js.map +1 -1
  34. package/lib/core/index.js +5 -1
  35. package/lib/core/index.js.map +1 -1
  36. package/lib/core/types/ext-host-types.js +2 -2
  37. package/lib/core/types/ext-host-types.js.map +1 -1
  38. package/lib/core/types/index.js +5 -1
  39. package/lib/core/types/index.js.map +1 -1
  40. package/lib/errors/index.js +5 -1
  41. package/lib/errors/index.js.map +1 -1
  42. package/lib/index.js +5 -1
  43. package/lib/index.js.map +1 -1
  44. package/lib/interfaces/contributions/index.js +5 -1
  45. package/lib/interfaces/contributions/index.js.map +1 -1
  46. package/lib/interfaces/ext-services/index.js +5 -1
  47. package/lib/interfaces/ext-services/index.js.map +1 -1
  48. package/lib/interfaces/generated-models.d.ts +352 -405
  49. package/lib/interfaces/generated-models.js +14 -14
  50. package/lib/interfaces/generated-models.js.map +1 -1
  51. package/lib/interfaces/index.js +5 -1
  52. package/lib/interfaces/index.js.map +1 -1
  53. package/lib/interfaces/react-props/index.js +5 -1
  54. package/lib/interfaces/react-props/index.js.map +1 -1
  55. package/lib/interfaces/text-document.js +2 -2
  56. package/lib/interfaces/text-document.js.map +1 -1
  57. package/lib/interfaces/webview/index.js +5 -1
  58. package/lib/interfaces/webview/index.js.map +1 -1
  59. package/lib/protocol/client.protocol.js +1 -1
  60. package/lib/protocol/client.protocol.js.map +1 -1
  61. package/lib/protocol/index.js +5 -1
  62. package/lib/protocol/index.js.map +1 -1
  63. package/lib/protocol/proxy-identifier.js +2 -2
  64. package/lib/protocol/proxy-identifier.js.map +1 -1
  65. package/lib/protocol/rpc-protocol.d.ts +1 -0
  66. package/lib/protocol/rpc-protocol.js +57 -57
  67. package/lib/protocol/rpc-protocol.js.map +1 -1
  68. package/lib/protocol/rpc-protocol.test.d.ts +1 -0
  69. package/lib/protocol/rpc-protocol.test.js +171 -0
  70. package/lib/protocol/rpc-protocol.test.js.map +1 -0
  71. package/lib/protocol/server.protocol.d.ts +4 -1
  72. package/lib/protocol/server.protocol.js +10 -10
  73. package/lib/protocol/server.protocol.js.map +1 -1
  74. package/lib/protocol/shared/editor.js +2 -2
  75. package/lib/protocol/shared/editor.js.map +1 -1
  76. package/lib/protocol/utils/index.js +5 -1
  77. package/lib/protocol/utils/index.js.map +1 -1
  78. package/lib/protocol/utils/lazy-promise.js +2 -1
  79. package/lib/protocol/utils/lazy-promise.js.map +1 -1
  80. package/lib/utils/extensions.js +1 -1
  81. package/lib/utils/extensions.js.map +1 -1
  82. package/lib/utils/index.js +5 -1
  83. package/lib/utils/index.js.map +1 -1
  84. package/lib/utils/rxjs/combineLatestOrDefault.js +4 -4
  85. package/lib/utils/rxjs/combineLatestOrDefault.js.map +1 -1
  86. package/lib/utils/rxjs/combineLatestOrDefault.test.d.ts +1 -0
  87. package/lib/utils/rxjs/combineLatestOrDefault.test.js +52 -0
  88. package/lib/utils/rxjs/combineLatestOrDefault.test.js.map +1 -0
  89. package/lib/utils/rxjs/index.js +5 -1
  90. package/lib/utils/rxjs/index.js.map +1 -1
  91. package/lib/utils/util.js +1 -1
  92. package/lib/utils/util.js.map +1 -1
  93. package/lib/worker-lib/index.js +5 -1
  94. package/lib/worker-lib/index.js.map +1 -1
  95. package/lib/worker-lib/webWorkerLink.js +3 -3
  96. package/lib/worker-lib/webWorkerLink.js.map +1 -1
  97. package/lib/worker-lib/workerUtils.js +8 -8
  98. package/lib/worker-lib/workerUtils.js.map +1 -1
  99. package/package.json +26 -22
@@ -95,10 +95,10 @@ function _createConnection(transports, logger) {
95
95
  return 'not-' + (++notificationSquenceNumber).toString();
96
96
  }
97
97
  function addMessageToQueue(queue, message) {
98
- if (messages_1.isRequestMessage(message)) {
98
+ if ((0, messages_1.isRequestMessage)(message)) {
99
99
  queue.set(createRequestQueueKey(message.id), message);
100
100
  }
101
- else if (messages_1.isResponseMessage(message)) {
101
+ else if ((0, messages_1.isResponseMessage)(message)) {
102
102
  const key = createResponseQueueKey(message.id) + Math.random(); // TODO(sqs)
103
103
  queue.set(key, message);
104
104
  }
@@ -148,13 +148,13 @@ function _createConnection(transports, logger) {
148
148
  }
149
149
  const message = messageQueue.shift();
150
150
  try {
151
- if (messages_1.isRequestMessage(message)) {
151
+ if ((0, messages_1.isRequestMessage)(message)) {
152
152
  handleRequest(message);
153
153
  }
154
- else if (messages_1.isNotificationMessage(message)) {
154
+ else if ((0, messages_1.isNotificationMessage)(message)) {
155
155
  handleNotification(message);
156
156
  }
157
- else if (messages_1.isResponseMessage(message)) {
157
+ else if ((0, messages_1.isResponseMessage)(message)) {
158
158
  handleResponse(message);
159
159
  }
160
160
  else {
@@ -170,10 +170,10 @@ function _createConnection(transports, logger) {
170
170
  try {
171
171
  // We have received an abort signal. Check if the message is still in the queue and abort it if allowed
172
172
  // to do so.
173
- if (messages_1.isNotificationMessage(message) && message.method === ABORT_REQUEST_METHOD) {
173
+ if ((0, messages_1.isNotificationMessage)(message) && message.method === ABORT_REQUEST_METHOD) {
174
174
  const key = createRequestQueueKey(message.params[0]);
175
175
  const toAbort = messageQueue.get(key);
176
- if (messages_1.isRequestMessage(toAbort)) {
176
+ if ((0, messages_1.isRequestMessage)(toAbort)) {
177
177
  messageQueue.delete(key);
178
178
  const response = {
179
179
  jsonrpc: '2.0',
@@ -263,11 +263,11 @@ function _createConnection(transports, logger) {
263
263
  delete requestAbortControllers[signalKey];
264
264
  replySuccess(handlerResult);
265
265
  }
266
- else if (utils_1.isPromise(handlerResult) || rxjs_1.isObservable(handlerResult)) {
266
+ else if ((0, utils_1.isPromise)(handlerResult) || (0, rxjs_1.isObservable)(handlerResult)) {
267
267
  const onComplete = () => {
268
268
  delete requestAbortControllers[signalKey];
269
269
  };
270
- rxjs_1.from(handlerResult).subscribe(value => reply(value, false), error => {
270
+ (0, rxjs_1.from)(handlerResult).subscribe(value => reply(value, false), error => {
271
271
  onComplete();
272
272
  if (error instanceof messages_1.ResponseError) {
273
273
  replyError(error);
@@ -500,7 +500,7 @@ function _createConnection(transports, logger) {
500
500
  sendRequest: (method, params, signal, toSecondary = false) => {
501
501
  throwIfClosedOrUnsubscribed();
502
502
  throwIfNotListening();
503
- return abortable_rx_1.toPromise(requestHelper(method, params, toSecondary), signal);
503
+ return (0, abortable_rx_1.toPromise)(requestHelper(method, params, toSecondary), signal);
504
504
  },
505
505
  observeRequest: (method, params) => {
506
506
  throwIfClosedOrUnsubscribed();
@@ -1 +1 @@
1
- {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../../src/connections/jsonrpc2/connection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../../src/connections/jsonrpc2/connection.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ import 'babel-polyfill';
@@ -0,0 +1,452 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ require("babel-polyfill");
13
+ const abort_controller_1 = require("abort-controller");
14
+ const assert = require("assert");
15
+ const rxjs_1 = require("rxjs");
16
+ const operators_1 = require("rxjs/operators");
17
+ const utils_1 = require("../../utils");
18
+ const connection_1 = require("./connection");
19
+ const test_helper_1 = require("./test-helper");
20
+ const messages_1 = require("./messages");
21
+ // import 'jest';
22
+ describe('Connection', () => {
23
+ // Polyfill
24
+ ;
25
+ global.AbortController = abort_controller_1.default;
26
+ it('handle single request', () => __awaiter(void 0, void 0, void 0, function* () {
27
+ const method = 'test/handleSingleRequest';
28
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
29
+ const server = (0, connection_1.createConnection)(serverTransports);
30
+ server.onRequest(method, (p1, _signal) => {
31
+ assert.deepStrictEqual(p1, ['foo']);
32
+ return p1;
33
+ });
34
+ server.listen();
35
+ const client = (0, connection_1.createConnection)(clientTransports);
36
+ client.listen();
37
+ assert.deepStrictEqual(yield client.sendRequest(method, ['foo']), ['foo']);
38
+ }));
39
+ it('handle single request with async result', () => __awaiter(void 0, void 0, void 0, function* () {
40
+ const method = 'test/handleSingleRequest';
41
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
42
+ const server = (0, connection_1.createConnection)(serverTransports);
43
+ server.onRequest(method, (p1, _signal) => {
44
+ assert.deepStrictEqual(p1, ['foo']);
45
+ return Promise.resolve(p1);
46
+ });
47
+ server.listen();
48
+ const client = (0, connection_1.createConnection)(clientTransports);
49
+ client.listen();
50
+ assert.deepStrictEqual(yield client.sendRequest(method, ['foo']), ['foo']);
51
+ }));
52
+ it('abort undispatched request', () => __awaiter(void 0, void 0, void 0, function* () {
53
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
54
+ const b1 = (0, utils_1.createBarrier)();
55
+ const b2 = (0, utils_1.createBarrier)();
56
+ const server = (0, connection_1.createConnection)(serverTransports);
57
+ server.onRequest('block', () => __awaiter(void 0, void 0, void 0, function* () {
58
+ b2.done();
59
+ yield b1.wait;
60
+ }));
61
+ server.onRequest('undispatched', () => {
62
+ throw new Error('handler should not be called');
63
+ });
64
+ server.listen();
65
+ const client = (0, connection_1.createConnection)(clientTransports);
66
+ client.listen();
67
+ client.sendRequest('block').catch(null);
68
+ yield b2.wait;
69
+ const abortController = new abort_controller_1.default();
70
+ const result = client.sendRequest('undispatched', ['foo'], abortController.signal);
71
+ abortController.abort();
72
+ b1.done();
73
+ yield assert.rejects(result, (err /** : AbortError*/) => err.name === 'AbortError');
74
+ }));
75
+ it('abort request currently being handled', () => __awaiter(void 0, void 0, void 0, function* () {
76
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
77
+ const server = (0, connection_1.createConnection)(serverTransports);
78
+ server.onRequest('m', (_params, signal) => {
79
+ if (!signal) {
80
+ throw new Error('!signal');
81
+ }
82
+ return new Promise(resolve => {
83
+ signal.addEventListener('abort', () => resolve(123));
84
+ });
85
+ });
86
+ server.onRequest('ping', () => 'pong');
87
+ server.listen();
88
+ const client = (0, connection_1.createConnection)(clientTransports);
89
+ client.listen();
90
+ const abortController = new abort_controller_1.default();
91
+ const result = client.sendRequest('m', undefined, abortController.signal);
92
+ assert.strictEqual(yield client.sendRequest('ping'), 'pong'); // waits until the 'm' message starts to be handled
93
+ abortController.abort();
94
+ yield assert.rejects(result, (err /**: AbortError */) => err.name === 'AbortError');
95
+ }));
96
+ it('send request with single observable emission', () => __awaiter(void 0, void 0, void 0, function* () {
97
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
98
+ const server = (0, connection_1.createConnection)(serverTransports);
99
+ server.onRequest('m', (params) => (0, rxjs_1.of)(params[0] + 1).pipe((0, operators_1.delay)(0)));
100
+ server.listen();
101
+ const client = (0, connection_1.createConnection)(clientTransports);
102
+ client.listen();
103
+ assert.strictEqual(yield client.sendRequest('m', [1]), 2);
104
+ }));
105
+ it('observe request with single observable emission', () => __awaiter(void 0, void 0, void 0, function* () {
106
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
107
+ const server = (0, connection_1.createConnection)(serverTransports);
108
+ server.onRequest('m', (params) => (0, rxjs_1.of)(params[0] + 1));
109
+ server.listen();
110
+ const client = (0, connection_1.createConnection)(clientTransports);
111
+ client.listen();
112
+ const result = client.observeRequest('m', [1]);
113
+ assert.deepStrictEqual(yield result.toPromise(), 2);
114
+ }));
115
+ it('observe request with multiple observable emissions', () => __awaiter(void 0, void 0, void 0, function* () {
116
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
117
+ const server = (0, connection_1.createConnection)(serverTransports);
118
+ server.onRequest('m', (params) => new rxjs_1.Observable(observer => {
119
+ for (const v of params) {
120
+ observer.next(v + 1);
121
+ }
122
+ observer.complete();
123
+ }));
124
+ server.listen();
125
+ const client = (0, connection_1.createConnection)(clientTransports);
126
+ client.listen();
127
+ assert.deepStrictEqual(yield client
128
+ .observeRequest('m', [1, 2, 3, 4])
129
+ .pipe((0, operators_1.bufferCount)(4))
130
+ .toPromise(), [2, 3, 4, 5]);
131
+ }));
132
+ it('handle multiple requests', () => __awaiter(void 0, void 0, void 0, function* () {
133
+ const method = 'test/handleSingleRequest';
134
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
135
+ const server = (0, connection_1.createConnection)(serverTransports);
136
+ server.onRequest(method, (p1, _signal) => p1);
137
+ server.listen();
138
+ const client = (0, connection_1.createConnection)(clientTransports);
139
+ client.listen();
140
+ const promises = [];
141
+ promises.push(client.sendRequest(method, ['foo']));
142
+ promises.push(client.sendRequest(method, ['bar']));
143
+ const values = yield Promise.all(promises);
144
+ assert.deepStrictEqual(values, [['foo'], ['bar']]);
145
+ }));
146
+ it('unhandled request', () => __awaiter(void 0, void 0, void 0, function* () {
147
+ const method = 'test/handleSingleRequest';
148
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
149
+ const server = (0, connection_1.createConnection)(serverTransports);
150
+ server.listen();
151
+ const client = (0, connection_1.createConnection)(clientTransports);
152
+ client.listen();
153
+ yield assert.rejects(() => client.sendRequest(method, ['foo']), (error) => error.code === messages_1.ErrorCodes.MethodNotFound);
154
+ }));
155
+ it('handler throws an Error', () => __awaiter(void 0, void 0, void 0, function* () {
156
+ const method = 'test/handleSingleRequest';
157
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
158
+ const server = (0, connection_1.createConnection)(serverTransports);
159
+ server.onRequest(method, () => {
160
+ throw new Error('test');
161
+ });
162
+ server.listen();
163
+ const client = (0, connection_1.createConnection)(clientTransports);
164
+ client.listen();
165
+ yield assert.rejects(() => client.sendRequest(method, ['foo']), (error) => error.code === messages_1.ErrorCodes.InternalError &&
166
+ error.message === 'test' &&
167
+ error.data &&
168
+ typeof error.data.stack === 'string');
169
+ }));
170
+ it('handler returns a rejected Promise with an Error', () => __awaiter(void 0, void 0, void 0, function* () {
171
+ const method = 'test/handleSingleRequest';
172
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
173
+ const server = (0, connection_1.createConnection)(serverTransports);
174
+ server.onRequest(method, () => Promise.reject(new Error('test')));
175
+ server.listen();
176
+ const client = (0, connection_1.createConnection)(clientTransports);
177
+ client.listen();
178
+ yield assert.rejects(() => client.sendRequest(method, ['foo']), (error) => error.code === messages_1.ErrorCodes.InternalError &&
179
+ error.message === 'test' &&
180
+ error.data &&
181
+ typeof error.data.stack === 'string');
182
+ }));
183
+ it('receives undefined request params as null', () => __awaiter(void 0, void 0, void 0, function* () {
184
+ const method = 'test/handleSingleRequest';
185
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
186
+ const server = (0, connection_1.createConnection)(serverTransports);
187
+ server.onRequest(method, params => {
188
+ assert.strictEqual(params, null);
189
+ return '';
190
+ });
191
+ server.listen();
192
+ const client = (0, connection_1.createConnection)(clientTransports);
193
+ client.listen();
194
+ yield client.sendRequest(method);
195
+ }));
196
+ it('receives undefined notification params as null', () => __awaiter(void 0, void 0, void 0, function* () {
197
+ const method = 'testNotification';
198
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
199
+ const server = (0, connection_1.createConnection)(serverTransports);
200
+ server.onNotification(method, params => {
201
+ assert.strictEqual(params, null);
202
+ return '';
203
+ });
204
+ server.listen();
205
+ const client = (0, connection_1.createConnection)(clientTransports);
206
+ client.listen();
207
+ client.sendNotification(method);
208
+ }));
209
+ it('receives null as null', () => __awaiter(void 0, void 0, void 0, function* () {
210
+ const method = 'test/handleSingleRequest';
211
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
212
+ const server = (0, connection_1.createConnection)(serverTransports);
213
+ server.onRequest(method, params => {
214
+ assert.deepStrictEqual(params, [null]);
215
+ return null;
216
+ });
217
+ server.listen();
218
+ const client = (0, connection_1.createConnection)(clientTransports);
219
+ client.listen();
220
+ assert.strictEqual(yield client.sendRequest(method, [null]), null);
221
+ }));
222
+ it('receives 0 as 0', () => __awaiter(void 0, void 0, void 0, function* () {
223
+ const method = 'test/handleSingleRequest';
224
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
225
+ const server = (0, connection_1.createConnection)(serverTransports);
226
+ server.onRequest(method, params => {
227
+ assert.deepStrictEqual(params, [0]);
228
+ return 0;
229
+ });
230
+ server.listen();
231
+ const client = (0, connection_1.createConnection)(clientTransports);
232
+ client.listen();
233
+ assert.strictEqual(yield client.sendRequest(method, [0]), 0);
234
+ }));
235
+ const testNotification = 'testNotification';
236
+ it('sends and receives notification', done => {
237
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
238
+ const server = (0, connection_1.createConnection)(serverTransports);
239
+ server.onNotification(testNotification, params => {
240
+ assert.deepStrictEqual(params, [{ value: true }]);
241
+ done();
242
+ });
243
+ server.listen();
244
+ const client = (0, connection_1.createConnection)(clientTransports);
245
+ client.listen();
246
+ client.sendNotification(testNotification, [{ value: true }]);
247
+ });
248
+ it('unhandled notification event', done => {
249
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
250
+ const server = (0, connection_1.createConnection)(serverTransports);
251
+ server.onUnhandledNotification(message => {
252
+ assert.strictEqual(message.method, testNotification);
253
+ assert.deepStrictEqual(message.params, [{ value: true }]);
254
+ done();
255
+ });
256
+ server.listen();
257
+ const client = (0, connection_1.createConnection)(clientTransports);
258
+ client.listen();
259
+ client.sendNotification(testNotification, [{ value: true }]);
260
+ });
261
+ it('unsubscribes client connection', () => __awaiter(void 0, void 0, void 0, function* () {
262
+ const method = 'test/handleSingleRequest';
263
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
264
+ const client = (0, connection_1.createConnection)(clientTransports);
265
+ const server = (0, connection_1.createConnection)(serverTransports);
266
+ server.onRequest(method, _param => {
267
+ client.unsubscribe();
268
+ return '';
269
+ });
270
+ server.listen();
271
+ client.listen();
272
+ yield assert.rejects(() => client.sendRequest(method, ['']));
273
+ }));
274
+ it('unsubscribed connection throws', () => {
275
+ const client = (0, connection_1.createConnection)((0, test_helper_1.createMessagePipe)());
276
+ client.listen();
277
+ client.unsubscribe();
278
+ assert.throws(() => client.sendNotification(testNotification));
279
+ });
280
+ it('two listen throw', () => {
281
+ const client = (0, connection_1.createConnection)((0, test_helper_1.createMessagePipe)());
282
+ client.listen();
283
+ assert.throws(() => client.listen());
284
+ });
285
+ it('notify on connection unsubscribe', done => {
286
+ const client = (0, connection_1.createConnection)((0, test_helper_1.createMessagePipe)());
287
+ client.listen();
288
+ client.onUnsubscribe(() => {
289
+ done();
290
+ });
291
+ client.unsubscribe();
292
+ });
293
+ it('params in notifications', done => {
294
+ const method = 'test';
295
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
296
+ const server = (0, connection_1.createConnection)(serverTransports);
297
+ server.onNotification(method, params => {
298
+ assert.deepStrictEqual(params, [10, 'vscode']);
299
+ done();
300
+ });
301
+ server.listen();
302
+ const client = (0, connection_1.createConnection)(clientTransports);
303
+ client.listen();
304
+ client.sendNotification(method, [10, 'vscode']);
305
+ });
306
+ it('params in request/response', () => __awaiter(void 0, void 0, void 0, function* () {
307
+ const method = 'add';
308
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
309
+ const server = (0, connection_1.createConnection)(serverTransports);
310
+ server.onRequest(method, (params) => {
311
+ assert.deepStrictEqual(params, [10, 20, 30]);
312
+ return params.reduce((sum, n) => sum + n, 0);
313
+ });
314
+ server.listen();
315
+ const client = (0, connection_1.createConnection)(clientTransports);
316
+ client.listen();
317
+ assert.strictEqual(yield client.sendRequest(method, [10, 20, 30]), 60);
318
+ }));
319
+ it('params in request/response with signal', () => __awaiter(void 0, void 0, void 0, function* () {
320
+ const method = 'add';
321
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
322
+ const server = (0, connection_1.createConnection)(serverTransports);
323
+ server.onRequest(method, (params, _signal) => {
324
+ assert.deepStrictEqual(params, [10, 20, 30]);
325
+ return params.reduce((sum, n) => sum + n, 0);
326
+ });
327
+ server.listen();
328
+ const client = (0, connection_1.createConnection)(clientTransports);
329
+ const signal = new abort_controller_1.default().signal;
330
+ client.listen();
331
+ assert.strictEqual(yield client.sendRequest(method, [10, 20, 30], signal), 60);
332
+ }));
333
+ it('1 param as array in request', () => __awaiter(void 0, void 0, void 0, function* () {
334
+ const type = 'add';
335
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
336
+ const server = (0, connection_1.createConnection)(serverTransports);
337
+ server.onRequest(type, p1 => {
338
+ assert(Array.isArray(p1));
339
+ assert.strictEqual(p1[0], 10);
340
+ assert.strictEqual(p1[1], 20);
341
+ assert.strictEqual(p1[2], 30);
342
+ return 60;
343
+ });
344
+ server.listen();
345
+ const client = (0, connection_1.createConnection)(clientTransports);
346
+ const signal = new abort_controller_1.default().signal;
347
+ client.listen();
348
+ assert.strictEqual(yield client.sendRequest(type, [10, 20, 30], signal), 60);
349
+ }));
350
+ it('1 param as array in notification', done => {
351
+ const type = 'add';
352
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
353
+ const server = (0, connection_1.createConnection)(serverTransports);
354
+ server.onNotification(type, params => {
355
+ assert.deepStrictEqual(params, [10, 20, 30]);
356
+ done();
357
+ });
358
+ server.listen();
359
+ const client = (0, connection_1.createConnection)(clientTransports);
360
+ client.listen();
361
+ client.sendNotification(type, [10, 20, 30]);
362
+ });
363
+ it('untyped request/response', () => __awaiter(void 0, void 0, void 0, function* () {
364
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
365
+ const server = (0, connection_1.createConnection)(serverTransports);
366
+ server.onRequest('test', (params, _signal) => {
367
+ assert.deepStrictEqual(params, [10, 20, 30]);
368
+ return params.reduce((sum, n) => sum + n, 0);
369
+ });
370
+ server.listen();
371
+ const client = (0, connection_1.createConnection)(clientTransports);
372
+ const signal = new abort_controller_1.default().signal;
373
+ client.listen();
374
+ assert.strictEqual(yield client.sendRequest('test', [10, 20, 30], signal), 60);
375
+ }));
376
+ it('untyped notification', done => {
377
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
378
+ const server = (0, connection_1.createConnection)(serverTransports);
379
+ server.onNotification('test', (params) => {
380
+ assert.deepStrictEqual(params, [10, 20, 30]);
381
+ done();
382
+ });
383
+ server.listen();
384
+ const client = (0, connection_1.createConnection)(clientTransports);
385
+ client.listen();
386
+ client.sendNotification('test', [10, 20, 30]);
387
+ });
388
+ it('star request handler', () => __awaiter(void 0, void 0, void 0, function* () {
389
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
390
+ const server = (0, connection_1.createConnection)(serverTransports);
391
+ server.onRequest((method, params, _signal) => {
392
+ assert.strictEqual(method, 'test');
393
+ assert.deepStrictEqual(params, [10, 20, 30]);
394
+ return params.reduce((sum, n) => sum + n, 0);
395
+ });
396
+ server.listen();
397
+ const client = (0, connection_1.createConnection)(clientTransports);
398
+ const signal = new abort_controller_1.default().signal;
399
+ client.listen();
400
+ assert.strictEqual(yield client.sendRequest('test', [10, 20, 30], signal), 60);
401
+ }));
402
+ it('star notification handler', done => {
403
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
404
+ const server = (0, connection_1.createConnection)(serverTransports);
405
+ server.onNotification((method, params) => {
406
+ assert.strictEqual(method, 'test');
407
+ assert.deepStrictEqual(params, [10, 20, 30]);
408
+ done();
409
+ });
410
+ server.listen();
411
+ const client = (0, connection_1.createConnection)(clientTransports);
412
+ client.listen();
413
+ client.sendNotification('test', [10, 20, 30]);
414
+ });
415
+ it('abort signal is undefined', () => __awaiter(void 0, void 0, void 0, function* () {
416
+ const type = 'add';
417
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
418
+ const server = (0, connection_1.createConnection)(serverTransports);
419
+ server.onRequest(type, (params, _signal) => {
420
+ assert.deepStrictEqual(params, [10, 20, 30]);
421
+ return params.reduce((sum, n) => sum + n, 0);
422
+ });
423
+ server.listen();
424
+ const client = (0, connection_1.createConnection)(clientTransports);
425
+ client.listen();
426
+ assert.strictEqual(yield client.sendRequest(type, [10, 20, 30], undefined), 60);
427
+ }));
428
+ it('null params in request', () => __awaiter(void 0, void 0, void 0, function* () {
429
+ const type = 'add';
430
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
431
+ const server = (0, connection_1.createConnection)(serverTransports);
432
+ server.onRequest(type, _signal => 123);
433
+ server.listen();
434
+ const client = (0, connection_1.createConnection)(clientTransports);
435
+ client.listen();
436
+ client.sendRequest(type, null).then((result) => assert.strictEqual(result, 123));
437
+ }));
438
+ it('null params in notifications', done => {
439
+ const type = 'test';
440
+ const [serverTransports, clientTransports] = (0, test_helper_1.createMessageTransports)();
441
+ const server = (0, connection_1.createConnection)(serverTransports);
442
+ server.onNotification(type, params => {
443
+ assert.strictEqual(params, null);
444
+ done();
445
+ });
446
+ server.listen();
447
+ const client = (0, connection_1.createConnection)(clientTransports);
448
+ client.listen();
449
+ client.sendNotification(type, null);
450
+ });
451
+ });
452
+ //# sourceMappingURL=connection.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection.test.js","sourceRoot":"","sources":["../../../src/connections/jsonrpc2/connection.test.ts"],"names":[],"mappings":"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"}