@companion-module/base 1.99.0-0-nightly-feat-split-api-20251221-153951-fa12995 → 1.99.0-nightly-feat-graphics-overhaul-20251222-140818-911eb31
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/README.md +11 -12
- package/dist/common/json-value.d.ts +1 -0
- package/dist/common/json-value.d.ts.map +1 -0
- package/dist/common/osc.d.ts +1 -0
- package/dist/common/osc.d.ts.map +1 -0
- package/dist/entrypoint.d.ts +1 -9
- package/dist/entrypoint.d.ts.map +1 -0
- package/dist/entrypoint.js +122 -4
- package/dist/entrypoint.js.map +1 -1
- package/dist/helpers/index.d.ts +1 -0
- package/dist/helpers/index.d.ts.map +1 -0
- package/dist/helpers/tcp.d.ts +1 -0
- package/dist/helpers/tcp.d.ts.map +1 -0
- package/dist/helpers/telnet.d.ts +1 -0
- package/dist/helpers/telnet.d.ts.map +1 -0
- package/dist/helpers/udp.d.ts +1 -0
- package/dist/helpers/udp.d.ts.map +1 -0
- package/dist/host-api/api.d.ts +402 -0
- package/dist/host-api/api.d.ts.map +1 -0
- package/dist/host-api/{context.js → api.js} +1 -6
- package/dist/host-api/api.js.map +1 -0
- package/dist/host-api/ipc-wrapper.d.ts +37 -0
- package/dist/host-api/ipc-wrapper.d.ts.map +1 -0
- package/dist/host-api/ipc-wrapper.js +128 -0
- package/dist/host-api/ipc-wrapper.js.map +1 -0
- package/dist/host-api/versions.d.ts +12 -0
- package/dist/host-api/versions.d.ts.map +1 -0
- package/dist/host-api/versions.js +5 -0
- package/dist/host-api/versions.js.map +1 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +22 -0
- package/dist/index.js.map +1 -0
- package/dist/instance-base.d.ts +1 -0
- package/dist/instance-base.d.ts.map +1 -0
- package/dist/internal/actions.d.ts +16 -0
- package/dist/internal/actions.d.ts.map +1 -0
- package/dist/internal/actions.js +223 -0
- package/dist/internal/actions.js.map +1 -0
- package/dist/internal/base.d.ts +11 -0
- package/dist/internal/base.d.ts.map +1 -0
- package/dist/internal/base.js +39 -0
- package/dist/internal/base.js.map +1 -0
- package/dist/internal/feedback.d.ts +20 -0
- package/dist/internal/feedback.d.ts.map +1 -0
- package/dist/internal/feedback.js +307 -0
- package/dist/internal/feedback.js.map +1 -0
- package/dist/internal/upgrade.d.ts +15 -0
- package/dist/internal/upgrade.d.ts.map +1 -0
- package/dist/internal/upgrade.js +174 -0
- package/dist/internal/upgrade.js.map +1 -0
- package/dist/manifest.d.ts +1 -0
- package/dist/manifest.d.ts.map +1 -0
- package/dist/module-api/action.d.ts +1 -0
- package/dist/module-api/action.d.ts.map +1 -0
- package/dist/module-api/base.d.ts +23 -3
- package/dist/module-api/base.d.ts.map +1 -0
- package/dist/module-api/base.js +338 -47
- package/dist/module-api/base.js.map +1 -1
- package/dist/module-api/common.d.ts +1 -0
- package/dist/module-api/common.d.ts.map +1 -0
- package/dist/module-api/config.d.ts +1 -0
- package/dist/module-api/config.d.ts.map +1 -0
- package/dist/module-api/enums.d.ts +2 -0
- package/dist/module-api/enums.d.ts.map +1 -0
- package/dist/module-api/enums.js.map +1 -1
- package/dist/module-api/feedback.d.ts +1 -0
- package/dist/module-api/feedback.d.ts.map +1 -0
- package/dist/module-api/graphics-composite.d.ts +11 -0
- package/dist/module-api/graphics-composite.d.ts.map +1 -0
- package/dist/module-api/graphics-composite.js +3 -0
- package/dist/module-api/graphics-composite.js.map +1 -0
- package/dist/module-api/graphics.d.ts +83 -0
- package/dist/module-api/graphics.d.ts.map +1 -0
- package/dist/module-api/graphics.js +12 -0
- package/dist/module-api/graphics.js.map +1 -0
- package/dist/module-api/http.d.ts +1 -0
- package/dist/module-api/http.d.ts.map +1 -0
- package/dist/module-api/index.d.ts +3 -0
- package/dist/module-api/index.d.ts.map +1 -0
- package/dist/module-api/index.js +2 -0
- package/dist/module-api/index.js.map +1 -1
- package/dist/module-api/input.d.ts +1 -0
- package/dist/module-api/input.d.ts.map +1 -0
- package/dist/module-api/preset.d.ts +49 -1
- package/dist/module-api/preset.d.ts.map +1 -0
- package/dist/module-api/shared-udp-socket.d.ts +4 -2
- package/dist/module-api/shared-udp-socket.d.ts.map +1 -0
- package/dist/module-api/shared-udp-socket.js +15 -13
- package/dist/module-api/shared-udp-socket.js.map +1 -1
- package/dist/module-api/style.d.ts +1 -0
- package/dist/module-api/style.d.ts.map +1 -0
- package/dist/module-api/upgrade.d.ts +1 -0
- package/dist/module-api/upgrade.d.ts.map +1 -0
- package/dist/module-api/variable.d.ts +1 -0
- package/dist/module-api/variable.d.ts.map +1 -0
- package/dist/util.d.ts +1 -0
- package/dist/util.d.ts.map +1 -0
- package/lib/debounce-fn/index.d.ts +83 -0
- package/lib/debounce-fn/index.js +78 -0
- package/lib/debounce-fn/license +9 -0
- package/lib/debounce-fn/readme.md +64 -0
- package/package.json +35 -6
- package/dist/__mocks__/net.d.ts +0 -30
- package/dist/__mocks__/net.js +0 -108
- package/dist/__mocks__/net.js.map +0 -1
- package/dist/__mocks__/util.d.ts +0 -8
- package/dist/__mocks__/util.js +0 -44
- package/dist/__mocks__/util.js.map +0 -1
- package/dist/helpers/__tests__/tcp.spec.d.ts +0 -1
- package/dist/helpers/__tests__/tcp.spec.js +0 -210
- package/dist/helpers/__tests__/tcp.spec.js.map +0 -1
- package/dist/helpers/__tests__/udp.spec.d.ts +0 -1
- package/dist/helpers/__tests__/udp.spec.js +0 -200
- package/dist/helpers/__tests__/udp.spec.js.map +0 -1
- package/dist/host-api/context.d.ts +0 -59
- package/dist/host-api/context.js.map +0 -1
- package/dist/logging.d.ts +0 -20
- package/dist/logging.js +0 -25
- package/dist/logging.js.map +0 -1
- package/dist/main.d.ts +0 -8
- package/dist/main.js +0 -14
- package/dist/main.js.map +0 -1
- package/dist/module-api/__tests__/shared-udp-socket.spec.d.ts +0 -1
- package/dist/module-api/__tests__/shared-udp-socket.spec.js +0 -272
- package/dist/module-api/__tests__/shared-udp-socket.spec.js.map +0 -1
|
@@ -1,200 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const tslib_1 = require("tslib");
|
|
4
|
-
const vitest_1 = require("vitest");
|
|
5
|
-
const udp_js_1 = require("../udp.js");
|
|
6
|
-
const events_1 = tslib_1.__importDefault(require("events"));
|
|
7
|
-
const enums_js_1 = require("../../module-api/enums.js");
|
|
8
|
-
const createSocketMock = vitest_1.vi.fn(() => {
|
|
9
|
-
throw new Error('Not implemented');
|
|
10
|
-
});
|
|
11
|
-
vitest_1.vi.mock('dgram', () => {
|
|
12
|
-
return {
|
|
13
|
-
default: {
|
|
14
|
-
createSocket: (...args) => createSocketMock(...args),
|
|
15
|
-
},
|
|
16
|
-
};
|
|
17
|
-
});
|
|
18
|
-
class MinimalSocket extends events_1.default {
|
|
19
|
-
isOpen = false;
|
|
20
|
-
constructor() {
|
|
21
|
-
super();
|
|
22
|
-
}
|
|
23
|
-
async emitMessage(address, port, msg) {
|
|
24
|
-
const rinfo = {
|
|
25
|
-
address: address,
|
|
26
|
-
port: port,
|
|
27
|
-
family: 'IPv4',
|
|
28
|
-
size: msg.length,
|
|
29
|
-
};
|
|
30
|
-
this.emit('message', msg, rinfo);
|
|
31
|
-
await vitest_1.vi.runAllTimersAsync();
|
|
32
|
-
}
|
|
33
|
-
bind = vitest_1.vi.fn(() => {
|
|
34
|
-
throw new Error('Not implemented');
|
|
35
|
-
});
|
|
36
|
-
send = vitest_1.vi.fn(() => {
|
|
37
|
-
throw new Error('Not implemented');
|
|
38
|
-
});
|
|
39
|
-
close = vitest_1.vi.fn(() => {
|
|
40
|
-
return this;
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
(0, vitest_1.describe)('UDP', () => {
|
|
44
|
-
(0, vitest_1.beforeEach)(() => {
|
|
45
|
-
createSocketMock.mockClear();
|
|
46
|
-
});
|
|
47
|
-
(0, vitest_1.describe)('construct', () => {
|
|
48
|
-
// beforeEach(() => {
|
|
49
|
-
// vi.useFakeTimers()
|
|
50
|
-
// })
|
|
51
|
-
(0, vitest_1.it)('no socket', () => {
|
|
52
|
-
createSocketMock.mockImplementationOnce(() => {
|
|
53
|
-
throw new Error('No sockets!');
|
|
54
|
-
});
|
|
55
|
-
(0, vitest_1.expect)(() => new udp_js_1.UDPHelper('1.2.3.4', 852)).toThrow('No sockets!');
|
|
56
|
-
});
|
|
57
|
-
(0, vitest_1.it)('bad bind', async () => {
|
|
58
|
-
const rawSocket = new MinimalSocket();
|
|
59
|
-
createSocketMock.mockReturnValueOnce(rawSocket);
|
|
60
|
-
(0, vitest_1.expect)(() => new udp_js_1.UDPHelper('1.2.3.4', 852)).toThrow('Unable to bind');
|
|
61
|
-
(0, vitest_1.expect)(createSocketMock).toHaveBeenCalledTimes(1);
|
|
62
|
-
(0, vitest_1.expect)(rawSocket.bind).toHaveBeenCalledTimes(1);
|
|
63
|
-
(0, vitest_1.expect)(rawSocket.bind).toHaveBeenCalledWith(0, undefined);
|
|
64
|
-
});
|
|
65
|
-
(0, vitest_1.it)('ok', async () => {
|
|
66
|
-
const rawSocket = new MinimalSocket();
|
|
67
|
-
createSocketMock.mockReturnValueOnce(rawSocket);
|
|
68
|
-
rawSocket.bind.mockImplementationOnce(() => {
|
|
69
|
-
// No op
|
|
70
|
-
return rawSocket;
|
|
71
|
-
});
|
|
72
|
-
const socket = new udp_js_1.UDPHelper('1.2.3.4', 852);
|
|
73
|
-
try {
|
|
74
|
-
(0, vitest_1.expect)(socket).toBeTruthy();
|
|
75
|
-
(0, vitest_1.expect)(createSocketMock).toHaveBeenCalledTimes(1);
|
|
76
|
-
(0, vitest_1.expect)(rawSocket.bind).toHaveBeenCalledTimes(1);
|
|
77
|
-
(0, vitest_1.expect)(rawSocket.bind).toHaveBeenCalledWith(0, undefined);
|
|
78
|
-
}
|
|
79
|
-
finally {
|
|
80
|
-
socket.destroy();
|
|
81
|
-
}
|
|
82
|
-
});
|
|
83
|
-
// TODO - options
|
|
84
|
-
});
|
|
85
|
-
(0, vitest_1.it)('error propogation', async () => {
|
|
86
|
-
const rawSocket = new MinimalSocket();
|
|
87
|
-
createSocketMock.mockReturnValueOnce(rawSocket);
|
|
88
|
-
rawSocket.bind.mockImplementationOnce(() => rawSocket);
|
|
89
|
-
const socket = new udp_js_1.UDPHelper('1.2.3.4', 852);
|
|
90
|
-
try {
|
|
91
|
-
(0, vitest_1.expect)(socket).toBeTruthy();
|
|
92
|
-
const errorHandler = vitest_1.vi.fn(() => null);
|
|
93
|
-
const statusHandler = vitest_1.vi.fn(() => null);
|
|
94
|
-
socket.on('error', errorHandler);
|
|
95
|
-
socket.on('status_change', statusHandler);
|
|
96
|
-
(0, vitest_1.expect)(createSocketMock).toHaveBeenCalledTimes(1);
|
|
97
|
-
rawSocket.emit('error', new Error('My fake error'));
|
|
98
|
-
(0, vitest_1.expect)(errorHandler).toHaveBeenCalledTimes(1);
|
|
99
|
-
(0, vitest_1.expect)(errorHandler).toHaveBeenCalledWith(new Error('My fake error'));
|
|
100
|
-
(0, vitest_1.expect)(statusHandler).toHaveBeenCalledTimes(1);
|
|
101
|
-
(0, vitest_1.expect)(statusHandler).toHaveBeenCalledWith(enums_js_1.InstanceStatus.UnknownError, 'My fake error');
|
|
102
|
-
}
|
|
103
|
-
finally {
|
|
104
|
-
socket.destroy();
|
|
105
|
-
}
|
|
106
|
-
});
|
|
107
|
-
(0, vitest_1.describe)('listening', () => {
|
|
108
|
-
(0, vitest_1.it)('ok', async () => {
|
|
109
|
-
const rawSocket = new MinimalSocket();
|
|
110
|
-
createSocketMock.mockReturnValueOnce(rawSocket);
|
|
111
|
-
rawSocket.bind.mockImplementationOnce(() => rawSocket);
|
|
112
|
-
const socket = new udp_js_1.UDPHelper('1.2.3.4', 852);
|
|
113
|
-
try {
|
|
114
|
-
(0, vitest_1.expect)(socket).toBeTruthy();
|
|
115
|
-
const listeningHandler = vitest_1.vi.fn(() => null);
|
|
116
|
-
const statusHandler = vitest_1.vi.fn(() => null);
|
|
117
|
-
socket.on('listening', listeningHandler);
|
|
118
|
-
socket.on('status_change', statusHandler);
|
|
119
|
-
(0, vitest_1.expect)(createSocketMock).toHaveBeenCalledTimes(1);
|
|
120
|
-
rawSocket.emit('listening');
|
|
121
|
-
(0, vitest_1.expect)(listeningHandler).toHaveBeenCalledTimes(1);
|
|
122
|
-
(0, vitest_1.expect)(statusHandler).toHaveBeenCalledTimes(1);
|
|
123
|
-
(0, vitest_1.expect)(statusHandler).toHaveBeenCalledWith(enums_js_1.InstanceStatus.Ok, undefined);
|
|
124
|
-
}
|
|
125
|
-
finally {
|
|
126
|
-
socket.destroy();
|
|
127
|
-
}
|
|
128
|
-
});
|
|
129
|
-
// TODO - options
|
|
130
|
-
});
|
|
131
|
-
// it('no error handler timeout', () => {
|
|
132
|
-
// const rawSocket = new MinimalSocket()
|
|
133
|
-
// createSocketMock.mockReturnValueOnce(rawSocket as any)
|
|
134
|
-
// rawSocket.bind.mockImplementationOnce(() => rawSocket as any)
|
|
135
|
-
// vi.advanceTimersByTimeAsync(10000)
|
|
136
|
-
// })
|
|
137
|
-
(0, vitest_1.describe)('send', () => {
|
|
138
|
-
const rawSocket = new MinimalSocket();
|
|
139
|
-
rawSocket.bind.mockImplementation(() => rawSocket);
|
|
140
|
-
let socket;
|
|
141
|
-
(0, vitest_1.beforeAll)(() => {
|
|
142
|
-
createSocketMock.mockReturnValueOnce(rawSocket);
|
|
143
|
-
socket = new udp_js_1.UDPHelper('1.2.3.4', 852);
|
|
144
|
-
(0, vitest_1.expect)(socket).toBeTruthy();
|
|
145
|
-
});
|
|
146
|
-
(0, vitest_1.beforeEach)(() => {
|
|
147
|
-
rawSocket.close.mockClear();
|
|
148
|
-
rawSocket.send.mockClear();
|
|
149
|
-
});
|
|
150
|
-
(0, vitest_1.afterAll)(() => {
|
|
151
|
-
if (socket)
|
|
152
|
-
socket.destroy();
|
|
153
|
-
});
|
|
154
|
-
(0, vitest_1.it)('destroyed', async () => {
|
|
155
|
-
createSocketMock.mockReturnValueOnce(rawSocket);
|
|
156
|
-
const mySocket = new udp_js_1.UDPHelper('1.2.3.4', 852);
|
|
157
|
-
(0, vitest_1.expect)(mySocket).toBeTruthy();
|
|
158
|
-
mySocket.destroy();
|
|
159
|
-
(0, vitest_1.expect)(rawSocket.close).toHaveBeenCalledTimes(1);
|
|
160
|
-
await (0, vitest_1.expect)(mySocket.send('test')).rejects.toThrow('Cannot write to destroyed socket');
|
|
161
|
-
});
|
|
162
|
-
(0, vitest_1.it)('no message', async () => {
|
|
163
|
-
await (0, vitest_1.expect)(socket.send(undefined)).rejects.toThrow('No message to send');
|
|
164
|
-
(0, vitest_1.expect)(rawSocket.send).toHaveBeenCalledTimes(0);
|
|
165
|
-
});
|
|
166
|
-
(0, vitest_1.it)('ok: string', async () => {
|
|
167
|
-
rawSocket.send.mockImplementation((msg, offset, length, cb) => {
|
|
168
|
-
if (!cb)
|
|
169
|
-
return;
|
|
170
|
-
cb(null, length);
|
|
171
|
-
});
|
|
172
|
-
await (0, vitest_1.expect)(socket.send('test 123')).resolves.toBeUndefined();
|
|
173
|
-
(0, vitest_1.expect)(rawSocket.send).toHaveBeenCalledTimes(1);
|
|
174
|
-
(0, vitest_1.expect)(rawSocket.send).toHaveBeenCalledWith('test 123', 852, '1.2.3.4', vitest_1.expect.any(Function));
|
|
175
|
-
});
|
|
176
|
-
(0, vitest_1.it)('ok: buffer', async () => {
|
|
177
|
-
rawSocket.send.mockImplementation((msg, offset, length, cb) => {
|
|
178
|
-
if (!cb)
|
|
179
|
-
return;
|
|
180
|
-
cb(null, length);
|
|
181
|
-
});
|
|
182
|
-
const msg = Buffer.from('test 123');
|
|
183
|
-
await (0, vitest_1.expect)(socket.send(msg)).resolves.toBeUndefined();
|
|
184
|
-
(0, vitest_1.expect)(rawSocket.send).toHaveBeenCalledTimes(1);
|
|
185
|
-
(0, vitest_1.expect)(rawSocket.send).toHaveBeenCalledWith(msg, 852, '1.2.3.4', vitest_1.expect.any(Function));
|
|
186
|
-
});
|
|
187
|
-
(0, vitest_1.it)('send error', async () => {
|
|
188
|
-
rawSocket.send.mockImplementation((msg, offset, length, cb) => {
|
|
189
|
-
if (!cb)
|
|
190
|
-
return;
|
|
191
|
-
cb(new Error('buffer overflow'), 0);
|
|
192
|
-
});
|
|
193
|
-
const msg = Buffer.from('test 123');
|
|
194
|
-
await (0, vitest_1.expect)(socket.send(msg)).rejects.toThrow('buffer overflow');
|
|
195
|
-
(0, vitest_1.expect)(rawSocket.send).toHaveBeenCalledTimes(1);
|
|
196
|
-
(0, vitest_1.expect)(rawSocket.send).toHaveBeenCalledWith(msg, 852, '1.2.3.4', vitest_1.expect.any(Function));
|
|
197
|
-
});
|
|
198
|
-
});
|
|
199
|
-
});
|
|
200
|
-
//# sourceMappingURL=udp.spec.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"udp.spec.js","sourceRoot":"","sources":["../../../src/helpers/__tests__/udp.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Warning: these types are intentionally semi-isolated from the module-api folder.
|
|
3
|
-
* While it causes a lot of duplicate typings and requires us to do translation of types,
|
|
4
|
-
* it allows for us to be selective as to whether a change impacts the module api or the host api.
|
|
5
|
-
* This will allow for cleaner and more stable apis which can both evolve at different rates
|
|
6
|
-
*/
|
|
7
|
-
import type { RemoteInfo } from 'dgram';
|
|
8
|
-
import type { CompanionActionDefinitions, CompanionFeedbackDefinitions, CompanionPresetDefinitions, CompanionRecordedAction, CompanionStaticUpgradeScript, CompanionVariableDefinition, CompanionVariableValue, CompanionVariableValues, InstanceStatus } from '../module-api/index.js';
|
|
9
|
-
import type { OSCSomeArguments } from '../common/osc.js';
|
|
10
|
-
import type { SharedUdpSocketImpl } from '../module-api/shared-udp-socket.js';
|
|
11
|
-
export declare function isInstanceContext<TConfig, TSecrets>(obj: unknown): obj is InstanceContext<TConfig, TSecrets>;
|
|
12
|
-
export interface InstanceContext<TConfig, TSecrets> extends InstanceSharedUdpSocketContext {
|
|
13
|
-
readonly _isInstanceContext: true;
|
|
14
|
-
readonly id: string;
|
|
15
|
-
label: string;
|
|
16
|
-
readonly upgradeScripts: CompanionStaticUpgradeScript<TConfig, TSecrets>[];
|
|
17
|
-
saveConfig: (config: TConfig | undefined, secrets: TSecrets | undefined) => void;
|
|
18
|
-
updateStatus(status: InstanceStatus, message: string | null): void;
|
|
19
|
-
oscSend(host: string, port: number, path: string, args: OSCSomeArguments): void;
|
|
20
|
-
parseVariablesInString(text: string): Promise<string>;
|
|
21
|
-
recordAction(action: CompanionRecordedAction, uniquenessId?: string): void;
|
|
22
|
-
setActionDefinitions: (actions: CompanionActionDefinitions) => void;
|
|
23
|
-
subscribeActions: (actionIds: string[]) => void;
|
|
24
|
-
unsubscribeActions: (actionIds: string[]) => void;
|
|
25
|
-
setFeedbackDefinitions: (feedbacks: CompanionFeedbackDefinitions) => void;
|
|
26
|
-
subscribeFeedbacks: (feedbackIds: string[]) => void;
|
|
27
|
-
unsubscribeFeedbacks: (feedbackIds: string[]) => void;
|
|
28
|
-
checkFeedbacks: (feedbackTypes: string[]) => void;
|
|
29
|
-
checkFeedbacksById: (feedbackIds: string[]) => void;
|
|
30
|
-
setPresetDefinitions: (presets: CompanionPresetDefinitions) => void;
|
|
31
|
-
setVariableDefinitions: (variables: CompanionVariableDefinition[]) => void;
|
|
32
|
-
setVariableValues: (values: CompanionVariableValues) => void;
|
|
33
|
-
getVariableValue: (variableId: string) => CompanionVariableValue | undefined;
|
|
34
|
-
}
|
|
35
|
-
export interface InstanceSharedUdpSocketContext {
|
|
36
|
-
readonly sharedUdpSocketHandlers: Map<string, SharedUdpSocketImpl>;
|
|
37
|
-
sharedUdpSocketJoin: (msg: SharedUdpSocketMessageJoin) => Promise<string>;
|
|
38
|
-
sharedUdpSocketLeave: (msg: SharedUdpSocketMessageLeave) => Promise<void>;
|
|
39
|
-
sharedUdpSocketSend: (msg: SharedUdpSocketMessageSend) => Promise<void>;
|
|
40
|
-
}
|
|
41
|
-
export interface SharedUdpSocketMessageJoin {
|
|
42
|
-
family: 'udp4' | 'udp6';
|
|
43
|
-
portNumber: number;
|
|
44
|
-
}
|
|
45
|
-
export interface SharedUdpSocketMessageLeave {
|
|
46
|
-
handleId: string;
|
|
47
|
-
}
|
|
48
|
-
export interface SharedUdpSocketMessageSend {
|
|
49
|
-
handleId: string;
|
|
50
|
-
message: Buffer;
|
|
51
|
-
address: string;
|
|
52
|
-
port: number;
|
|
53
|
-
}
|
|
54
|
-
export interface SharedUdpSocketMessage {
|
|
55
|
-
handleId: string;
|
|
56
|
-
portNumber: number;
|
|
57
|
-
message: Buffer;
|
|
58
|
-
source: RemoteInfo;
|
|
59
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/host-api/context.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAiBH,8CAGC;AAHD,SAAgB,iBAAiB,CAAoB,GAAY;IAChE,MAAM,IAAI,GAAG,GAAyC,CAAA;IACtD,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,EAAE,KAAK,QAAQ,IAAI,IAAI,CAAC,kBAAkB,KAAK,IAAI,CAAA;AACnG,CAAC"}
|
package/dist/logging.d.ts
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
declare global {
|
|
2
|
-
/**
|
|
3
|
-
* INTERNAL USE ONLY
|
|
4
|
-
*/
|
|
5
|
-
var SURFACE_LOGGER: LoggingSink | undefined;
|
|
6
|
-
}
|
|
7
|
-
export type LogLevel = 'info' | 'warn' | 'error' | 'debug';
|
|
8
|
-
export interface ModuleLogger {
|
|
9
|
-
debug: (message: string) => void;
|
|
10
|
-
info: (message: string) => void;
|
|
11
|
-
warn: (message: string) => void;
|
|
12
|
-
error: (message: string) => void;
|
|
13
|
-
}
|
|
14
|
-
export type LoggingSink = (source: string | undefined, level: LogLevel, message: string) => void;
|
|
15
|
-
/**
|
|
16
|
-
* Create a logger instance
|
|
17
|
-
* @param source The source path to use for the logger
|
|
18
|
-
* @returns A logger instance
|
|
19
|
-
*/
|
|
20
|
-
export declare function createModuleLogger(source?: string): ModuleLogger;
|
package/dist/logging.js
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createModuleLogger = createModuleLogger;
|
|
4
|
-
const defaultLoggingSink = (source, level, message) => {
|
|
5
|
-
// Default logging implementation for unit testing purposes, this should be replaced by the host application
|
|
6
|
-
console.log(`[${level.toUpperCase()}]${source ? ` [${source}]` : ''} ${message}`);
|
|
7
|
-
};
|
|
8
|
-
function logToSink(source, level, message) {
|
|
9
|
-
const sink = typeof global.SURFACE_LOGGER === 'function' ? global.SURFACE_LOGGER : defaultLoggingSink;
|
|
10
|
-
sink(source, level, message);
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* Create a logger instance
|
|
14
|
-
* @param source The source path to use for the logger
|
|
15
|
-
* @returns A logger instance
|
|
16
|
-
*/
|
|
17
|
-
function createModuleLogger(source) {
|
|
18
|
-
return {
|
|
19
|
-
debug: (message) => logToSink(source, 'debug', message),
|
|
20
|
-
info: (message) => logToSink(source, 'info', message),
|
|
21
|
-
warn: (message) => logToSink(source, 'warn', message),
|
|
22
|
-
error: (message) => logToSink(source, 'error', message),
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
//# sourceMappingURL=logging.js.map
|
package/dist/logging.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"logging.js","sourceRoot":"","sources":["../src/logging.ts"],"names":[],"mappings":";;AAiCA,gDAOC;AAtBD,MAAM,kBAAkB,GAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;IAClE,4GAA4G;IAC5G,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,WAAW,EAAE,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,OAAO,EAAE,CAAC,CAAA;AAClF,CAAC,CAAA;AAED,SAAS,SAAS,CAAC,MAA0B,EAAE,KAAe,EAAE,OAAe;IAC9E,MAAM,IAAI,GAAG,OAAO,MAAM,CAAC,cAAc,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,kBAAkB,CAAA;IACrG,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;AAC7B,CAAC;AAED;;;;GAIG;AACH,SAAgB,kBAAkB,CAAC,MAAe;IACjD,OAAO;QACN,KAAK,EAAE,CAAC,OAAe,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC;QAC/D,IAAI,EAAE,CAAC,OAAe,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC;QAC7D,IAAI,EAAE,CAAC,OAAe,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC;QAC7D,KAAK,EAAE,CAAC,OAAe,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC;KAC/D,CAAA;AACF,CAAC"}
|
package/dist/main.d.ts
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export * from './logging.js';
|
|
2
|
-
export * from './manifest.js';
|
|
3
|
-
export * from './module-api/index.js';
|
|
4
|
-
export * from './common/osc.js';
|
|
5
|
-
export * from './common/json-value.js';
|
|
6
|
-
export * from './util.js';
|
|
7
|
-
export * from './helpers/index.js';
|
|
8
|
-
export { runEntrypoint, InstanceConstructor } from './entrypoint.js';
|
package/dist/main.js
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.runEntrypoint = void 0;
|
|
4
|
-
const tslib_1 = require("tslib");
|
|
5
|
-
tslib_1.__exportStar(require("./logging.js"), exports);
|
|
6
|
-
tslib_1.__exportStar(require("./manifest.js"), exports);
|
|
7
|
-
tslib_1.__exportStar(require("./module-api/index.js"), exports);
|
|
8
|
-
tslib_1.__exportStar(require("./common/osc.js"), exports);
|
|
9
|
-
tslib_1.__exportStar(require("./common/json-value.js"), exports);
|
|
10
|
-
tslib_1.__exportStar(require("./util.js"), exports);
|
|
11
|
-
tslib_1.__exportStar(require("./helpers/index.js"), exports);
|
|
12
|
-
var entrypoint_js_1 = require("./entrypoint.js");
|
|
13
|
-
Object.defineProperty(exports, "runEntrypoint", { enumerable: true, get: function () { return entrypoint_js_1.runEntrypoint; } });
|
|
14
|
-
//# sourceMappingURL=main.js.map
|
package/dist/main.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":";;;;AAAA,uDAA4B;AAC5B,wDAA6B;AAC7B,gEAAqC;AACrC,0DAA+B;AAC/B,iEAAsC;AACtC,oDAAyB;AACzB,6DAAkC;AAElC,iDAAoE;AAA3D,8GAAA,aAAa,OAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,272 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const vitest_1 = require("vitest");
|
|
4
|
-
const nanoid_1 = require("nanoid");
|
|
5
|
-
const shared_udp_socket_js_1 = require("../shared-udp-socket.js");
|
|
6
|
-
const util_js_1 = require("../../__mocks__/util.js");
|
|
7
|
-
async function sleepImmediate() {
|
|
8
|
-
return new Promise((resolve) => setImmediate(resolve));
|
|
9
|
-
}
|
|
10
|
-
(0, vitest_1.describe)('Shared UDP', () => {
|
|
11
|
-
function createContext() {
|
|
12
|
-
return {
|
|
13
|
-
sharedUdpSocketHandlers: new Map(),
|
|
14
|
-
sharedUdpSocketJoin: vitest_1.vi.fn(() => {
|
|
15
|
-
throw new Error('Not implemented');
|
|
16
|
-
}),
|
|
17
|
-
sharedUdpSocketLeave: vitest_1.vi.fn(() => {
|
|
18
|
-
throw new Error('Not implemented');
|
|
19
|
-
}),
|
|
20
|
-
sharedUdpSocketSend: vitest_1.vi.fn(() => {
|
|
21
|
-
throw new Error('Not implemented');
|
|
22
|
-
}),
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
(0, vitest_1.it)('call fail before open', () => {
|
|
26
|
-
const ctx = createContext();
|
|
27
|
-
const socket = new shared_udp_socket_js_1.SharedUdpSocketImpl(ctx, { type: 'udp4' });
|
|
28
|
-
(0, vitest_1.expect)(() => socket.close()).toThrow(/Socket is not open/);
|
|
29
|
-
(0, vitest_1.expect)(() => socket.send('', 12, '')).toThrow(/Socket is not open/);
|
|
30
|
-
});
|
|
31
|
-
(0, vitest_1.describe)('bind', () => {
|
|
32
|
-
(0, vitest_1.it)('ok', async () => {
|
|
33
|
-
const ctx = createContext();
|
|
34
|
-
const socket = new shared_udp_socket_js_1.SharedUdpSocketImpl(ctx, { type: 'udp4' });
|
|
35
|
-
(0, vitest_1.expect)(socket.eventNames()).toHaveLength(0);
|
|
36
|
-
const sendPromises = [];
|
|
37
|
-
ctx.sharedUdpSocketJoin.mockImplementationOnce(async () => {
|
|
38
|
-
const sendPromise = (0, util_js_1.createManualPromise)();
|
|
39
|
-
sendPromises.push(sendPromise);
|
|
40
|
-
return sendPromise;
|
|
41
|
-
});
|
|
42
|
-
const bindCb = vitest_1.vi.fn();
|
|
43
|
-
socket.bind(5678, '1.2.3.4', bindCb);
|
|
44
|
-
// Opening a second time should fail
|
|
45
|
-
(0, vitest_1.expect)(() => socket.bind(5678, '1.2.3.4', bindCb)).toThrow(/Socket is already/);
|
|
46
|
-
await sleepImmediate();
|
|
47
|
-
(0, vitest_1.expect)(bindCb).toHaveBeenCalledTimes(0);
|
|
48
|
-
// Check now a listener
|
|
49
|
-
(0, vitest_1.expect)(socket.eventNames()).toHaveLength(1);
|
|
50
|
-
(0, vitest_1.expect)(socket.listenerCount('listening')).toBe(1);
|
|
51
|
-
// Check call was made
|
|
52
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketJoin).toHaveBeenCalledTimes(1);
|
|
53
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketLeave).toHaveBeenCalledTimes(0);
|
|
54
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketSend).toHaveBeenCalledTimes(0);
|
|
55
|
-
(0, vitest_1.expect)(sendPromises).toHaveLength(1);
|
|
56
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketJoin).toHaveBeenCalledWith({
|
|
57
|
-
family: 'udp4',
|
|
58
|
-
portNumber: 5678,
|
|
59
|
-
});
|
|
60
|
-
// Mock receive a response
|
|
61
|
-
const handleId = (0, nanoid_1.nanoid)();
|
|
62
|
-
sendPromises[0].manualResolve(handleId);
|
|
63
|
-
// Verify that opened successfully
|
|
64
|
-
await sleepImmediate();
|
|
65
|
-
(0, vitest_1.expect)(bindCb).toHaveBeenCalledTimes(1);
|
|
66
|
-
// Should be tracked now
|
|
67
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketHandlers.get(handleId)).toBe(socket);
|
|
68
|
-
});
|
|
69
|
-
(0, vitest_1.it)('error', async () => {
|
|
70
|
-
const ctx = createContext();
|
|
71
|
-
const socket = new shared_udp_socket_js_1.SharedUdpSocketImpl(ctx, { type: 'udp4' });
|
|
72
|
-
(0, vitest_1.expect)(socket.eventNames()).toHaveLength(0);
|
|
73
|
-
const sendPromises = [];
|
|
74
|
-
ctx.sharedUdpSocketJoin.mockImplementationOnce(async () => {
|
|
75
|
-
const sendPromise = (0, util_js_1.createManualPromise)();
|
|
76
|
-
sendPromises.push(sendPromise);
|
|
77
|
-
return sendPromise;
|
|
78
|
-
});
|
|
79
|
-
const bindCb = vitest_1.vi.fn();
|
|
80
|
-
socket.bind(5678, '1.2.3.4', bindCb);
|
|
81
|
-
await sleepImmediate();
|
|
82
|
-
(0, vitest_1.expect)(bindCb).toHaveBeenCalledTimes(0);
|
|
83
|
-
// setup an error listener
|
|
84
|
-
const errorCb = vitest_1.vi.fn();
|
|
85
|
-
socket.on('error', errorCb);
|
|
86
|
-
// Check call was made
|
|
87
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketJoin).toHaveBeenCalledTimes(1);
|
|
88
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketLeave).toHaveBeenCalledTimes(0);
|
|
89
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketSend).toHaveBeenCalledTimes(0);
|
|
90
|
-
(0, vitest_1.expect)(sendPromises).toHaveLength(1);
|
|
91
|
-
// Mock receive a response
|
|
92
|
-
const err = new Error('Some backend failure');
|
|
93
|
-
sendPromises[0].manualReject(err);
|
|
94
|
-
// Verify that opening failed
|
|
95
|
-
await sleepImmediate();
|
|
96
|
-
(0, vitest_1.expect)(bindCb).toHaveBeenCalledTimes(0);
|
|
97
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketHandlers.size).toBe(0);
|
|
98
|
-
// Error should have propogated
|
|
99
|
-
(0, vitest_1.expect)(errorCb).toHaveBeenCalledTimes(1);
|
|
100
|
-
(0, vitest_1.expect)(errorCb).toHaveBeenCalledWith(err);
|
|
101
|
-
});
|
|
102
|
-
});
|
|
103
|
-
async function createAndOpenSocket(ctx) {
|
|
104
|
-
const socket = new shared_udp_socket_js_1.SharedUdpSocketImpl(ctx, { type: 'udp4' });
|
|
105
|
-
(0, vitest_1.expect)(socket.eventNames()).toHaveLength(0);
|
|
106
|
-
const sendPromises = [];
|
|
107
|
-
ctx.sharedUdpSocketJoin.mockImplementationOnce(async () => {
|
|
108
|
-
const sendPromise = (0, util_js_1.createManualPromise)();
|
|
109
|
-
sendPromises.push(sendPromise);
|
|
110
|
-
return sendPromise;
|
|
111
|
-
});
|
|
112
|
-
const bindCb = vitest_1.vi.fn();
|
|
113
|
-
socket.bind(5678, '1.2.3.4', bindCb);
|
|
114
|
-
// Mock receive a response
|
|
115
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketJoin).toHaveBeenCalledTimes(1);
|
|
116
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketLeave).toHaveBeenCalledTimes(0);
|
|
117
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketSend).toHaveBeenCalledTimes(0);
|
|
118
|
-
(0, vitest_1.expect)(sendPromises).toHaveLength(1);
|
|
119
|
-
const handleId = (0, nanoid_1.nanoid)();
|
|
120
|
-
sendPromises[0].manualResolve(handleId);
|
|
121
|
-
// Verify that opened successfully
|
|
122
|
-
await sleepImmediate();
|
|
123
|
-
(0, vitest_1.expect)(bindCb).toHaveBeenCalledTimes(1);
|
|
124
|
-
// Should be tracked now
|
|
125
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketHandlers.get(handleId)).toBe(socket);
|
|
126
|
-
ctx.sharedUdpSocketJoin.mockClear();
|
|
127
|
-
return { socket, handleId };
|
|
128
|
-
}
|
|
129
|
-
(0, vitest_1.describe)('send', () => {
|
|
130
|
-
(0, vitest_1.it)('ok', async () => {
|
|
131
|
-
const ctx = createContext();
|
|
132
|
-
const { socket, handleId } = await createAndOpenSocket(ctx);
|
|
133
|
-
const sendPromises = [];
|
|
134
|
-
ctx.sharedUdpSocketSend.mockImplementationOnce(async () => {
|
|
135
|
-
const sendPromise = (0, util_js_1.createManualPromise)();
|
|
136
|
-
sendPromises.push(sendPromise);
|
|
137
|
-
return sendPromise;
|
|
138
|
-
});
|
|
139
|
-
// Do send
|
|
140
|
-
const sendCb = vitest_1.vi.fn();
|
|
141
|
-
const message = Buffer.from('my fake message');
|
|
142
|
-
socket.send(message, 4789, '4.5.6.7', sendCb);
|
|
143
|
-
// Check callbacks
|
|
144
|
-
await sleepImmediate();
|
|
145
|
-
(0, vitest_1.expect)(sendCb).toHaveBeenCalledTimes(0);
|
|
146
|
-
// Check call was made
|
|
147
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketSend).toHaveBeenCalledTimes(1);
|
|
148
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketLeave).toHaveBeenCalledTimes(0);
|
|
149
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketJoin).toHaveBeenCalledTimes(0);
|
|
150
|
-
(0, vitest_1.expect)(sendPromises).toHaveLength(1);
|
|
151
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketSend).toHaveBeenCalledWith({
|
|
152
|
-
handleId,
|
|
153
|
-
message,
|
|
154
|
-
address: '4.5.6.7',
|
|
155
|
-
port: 4789,
|
|
156
|
-
});
|
|
157
|
-
// Mock receive a response
|
|
158
|
-
sendPromises[0].manualResolve(null);
|
|
159
|
-
// Verify the calback
|
|
160
|
-
await sleepImmediate();
|
|
161
|
-
(0, vitest_1.expect)(sendCb).toHaveBeenCalledTimes(1);
|
|
162
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketHandlers.has(handleId)).toBeTruthy();
|
|
163
|
-
});
|
|
164
|
-
(0, vitest_1.it)('error', async () => {
|
|
165
|
-
const ctx = createContext();
|
|
166
|
-
const { socket, handleId } = await createAndOpenSocket(ctx);
|
|
167
|
-
const sendPromises = [];
|
|
168
|
-
ctx.sharedUdpSocketSend.mockImplementationOnce(async () => {
|
|
169
|
-
const sendPromise = (0, util_js_1.createManualPromise)();
|
|
170
|
-
sendPromises.push(sendPromise);
|
|
171
|
-
return sendPromise;
|
|
172
|
-
});
|
|
173
|
-
// Do send
|
|
174
|
-
const sendCb = vitest_1.vi.fn();
|
|
175
|
-
const message = Buffer.from('my fake message');
|
|
176
|
-
socket.send(message, 4789, '4.5.6.7', sendCb);
|
|
177
|
-
const errorCb = vitest_1.vi.fn();
|
|
178
|
-
socket.on('error', errorCb);
|
|
179
|
-
// Check callbacks
|
|
180
|
-
await sleepImmediate();
|
|
181
|
-
(0, vitest_1.expect)(sendCb).toHaveBeenCalledTimes(0);
|
|
182
|
-
// Check call was made
|
|
183
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketSend).toHaveBeenCalledTimes(1);
|
|
184
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketLeave).toHaveBeenCalledTimes(0);
|
|
185
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketJoin).toHaveBeenCalledTimes(0);
|
|
186
|
-
(0, vitest_1.expect)(sendPromises).toHaveLength(1);
|
|
187
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketSend).toHaveBeenCalledWith({
|
|
188
|
-
handleId,
|
|
189
|
-
message,
|
|
190
|
-
address: '4.5.6.7',
|
|
191
|
-
port: 4789,
|
|
192
|
-
});
|
|
193
|
-
// Mock receive a response
|
|
194
|
-
const err = new Error('Some backend failure');
|
|
195
|
-
sendPromises[0].manualReject(err);
|
|
196
|
-
// Verify the calback
|
|
197
|
-
await sleepImmediate();
|
|
198
|
-
(0, vitest_1.expect)(sendCb).toHaveBeenCalledTimes(0);
|
|
199
|
-
(0, vitest_1.expect)(errorCb).toHaveBeenCalledTimes(1);
|
|
200
|
-
(0, vitest_1.expect)(errorCb).toHaveBeenCalledWith(err);
|
|
201
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketHandlers.has(handleId)).toBeTruthy();
|
|
202
|
-
});
|
|
203
|
-
});
|
|
204
|
-
(0, vitest_1.describe)('close', () => {
|
|
205
|
-
(0, vitest_1.it)('ok', async () => {
|
|
206
|
-
const ctx = createContext();
|
|
207
|
-
const { socket, handleId } = await createAndOpenSocket(ctx);
|
|
208
|
-
const sendPromises = [];
|
|
209
|
-
ctx.sharedUdpSocketLeave.mockImplementationOnce(async () => {
|
|
210
|
-
const sendPromise = (0, util_js_1.createManualPromise)();
|
|
211
|
-
sendPromises.push(sendPromise);
|
|
212
|
-
return sendPromise;
|
|
213
|
-
});
|
|
214
|
-
// Do send
|
|
215
|
-
const closeCb = vitest_1.vi.fn();
|
|
216
|
-
socket.close(closeCb);
|
|
217
|
-
// Check callbacks
|
|
218
|
-
await sleepImmediate();
|
|
219
|
-
(0, vitest_1.expect)(closeCb).toHaveBeenCalledTimes(0);
|
|
220
|
-
// Check call was made
|
|
221
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketLeave).toHaveBeenCalledTimes(1);
|
|
222
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketSend).toHaveBeenCalledTimes(0);
|
|
223
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketJoin).toHaveBeenCalledTimes(0);
|
|
224
|
-
(0, vitest_1.expect)(sendPromises).toHaveLength(1);
|
|
225
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketLeave).toHaveBeenCalledWith({
|
|
226
|
-
handleId,
|
|
227
|
-
});
|
|
228
|
-
// Mock receive a response
|
|
229
|
-
sendPromises[0].manualResolve(null);
|
|
230
|
-
// Verify the calback
|
|
231
|
-
await sleepImmediate();
|
|
232
|
-
(0, vitest_1.expect)(closeCb).toHaveBeenCalledTimes(1);
|
|
233
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketHandlers.has(handleId)).toBeFalsy();
|
|
234
|
-
});
|
|
235
|
-
(0, vitest_1.it)('error', async () => {
|
|
236
|
-
const ctx = createContext();
|
|
237
|
-
const { socket, handleId } = await createAndOpenSocket(ctx);
|
|
238
|
-
const sendPromises = [];
|
|
239
|
-
ctx.sharedUdpSocketLeave.mockImplementationOnce(async () => {
|
|
240
|
-
const sendPromise = (0, util_js_1.createManualPromise)();
|
|
241
|
-
sendPromises.push(sendPromise);
|
|
242
|
-
return sendPromise;
|
|
243
|
-
});
|
|
244
|
-
// Do send
|
|
245
|
-
const closeCb = vitest_1.vi.fn();
|
|
246
|
-
socket.close(closeCb);
|
|
247
|
-
const errorCb = vitest_1.vi.fn();
|
|
248
|
-
socket.on('error', errorCb);
|
|
249
|
-
// Check callbacks
|
|
250
|
-
await sleepImmediate();
|
|
251
|
-
(0, vitest_1.expect)(closeCb).toHaveBeenCalledTimes(0);
|
|
252
|
-
// Check call was made
|
|
253
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketLeave).toHaveBeenCalledTimes(1);
|
|
254
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketSend).toHaveBeenCalledTimes(0);
|
|
255
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketJoin).toHaveBeenCalledTimes(0);
|
|
256
|
-
(0, vitest_1.expect)(sendPromises).toHaveLength(1);
|
|
257
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketLeave).toHaveBeenCalledWith({
|
|
258
|
-
handleId,
|
|
259
|
-
});
|
|
260
|
-
// Mock receive a response
|
|
261
|
-
const err = new Error('Some backend failure');
|
|
262
|
-
sendPromises[0].manualReject(err);
|
|
263
|
-
// Verify the calback
|
|
264
|
-
await sleepImmediate();
|
|
265
|
-
(0, vitest_1.expect)(closeCb).toHaveBeenCalledTimes(0);
|
|
266
|
-
(0, vitest_1.expect)(errorCb).toHaveBeenCalledTimes(1);
|
|
267
|
-
(0, vitest_1.expect)(errorCb).toHaveBeenCalledWith(err);
|
|
268
|
-
(0, vitest_1.expect)(ctx.sharedUdpSocketHandlers.has(handleId)).toBeFalsy();
|
|
269
|
-
});
|
|
270
|
-
});
|
|
271
|
-
});
|
|
272
|
-
//# sourceMappingURL=shared-udp-socket.spec.js.map
|