mockrtc 0.3.1 → 0.4.0

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.
@@ -7,23 +7,28 @@ jobs:
7
7
 
8
8
  strategy:
9
9
  matrix:
10
- node-version: [14.x, 16.x, v16.18.0, 18.x, '*']
10
+ node-version: [20.x, v20.18.1, 22.x, 23.x]
11
11
 
12
12
  steps:
13
- - uses: actions/checkout@v2
13
+ - uses: actions/checkout@v3
14
14
 
15
- - uses: actions/setup-node@v2
15
+ - uses: actions/setup-node@v3
16
16
  with:
17
17
  node-version: ${{ matrix.node-version }}
18
+ check-latest: true
19
+ cache: 'npm'
20
+ cache-dependency-path: 'package.json'
18
21
 
19
- - run: npm install --no-package-lock
22
+ - run: npm install
20
23
  - run: npm run build
21
24
  - run: npm test
25
+ env:
26
+ NODE_OPTIONS: ${{ matrix.node-version == '22.x' && '--experimental-require-module' || '' }}
22
27
 
23
28
  - name: Deploy docs
24
- if: github.ref == 'refs/heads/main' && matrix.node-version == 'v16.16.0'
25
- uses: JamesIves/github-pages-deploy-action@v4.2.2
29
+ if: github.ref == 'refs/heads/main' && matrix.node-version == 'v20.18.1'
30
+ uses: JamesIves/github-pages-deploy-action@v4.5.0
26
31
  with:
27
32
  single-commit: true
28
33
  branch: gh-pages
29
- folder: typedoc
34
+ folder: typedoc
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # MockRTC [![Build Status](https://github.com/httptoolkit/mockrtc/workflows/CI/badge.svg)](https://github.com/httptoolkit/mockrtc/actions) [![Available on NPM](https://img.shields.io/npm/v/mockrtc.svg?)](https://npmjs.com/package/mockrtc)
1
+ # MockRTC [![Build Status](https://github.com/httptoolkit/mockrtc/actions/workflows/ci.yml/badge.svg)](https://github.com/httptoolkit/mockrtc/actions) [![Available on NPM](https://img.shields.io/npm/v/mockrtc.svg?)](https://npmjs.com/package/mockrtc)
2
2
 
3
3
  > _Part of [HTTP Toolkit](https://httptoolkit.tech): powerful tools for building, testing & debugging HTTP(S), WebSockets and WebRTC_
4
4
 
@@ -1,6 +1,6 @@
1
1
  /// <reference types="node" />
2
2
  import * as stream from 'stream';
3
- import * as NodeDataChannel from 'node-datachannel';
3
+ import type * as NodeDataChannel from 'node-datachannel';
4
4
  /**
5
5
  * Turns a node-datachannel DataChannel into a real Node.js stream, complete with
6
6
  * buffering, backpressure (up to a point - if the buffer fills up, messages are dropped),
@@ -1,6 +1,6 @@
1
1
  /// <reference types="node" />
2
2
  import * as stream from 'stream';
3
- import * as NodeDataChannel from 'node-datachannel';
3
+ import type * as NodeDataChannel from 'node-datachannel';
4
4
  /**
5
5
  * Turns a node-datachannel media track into a real Node.js stream, complete with
6
6
  * buffering, backpressure (up to a point - if the buffer fills up, messages are dropped),
@@ -6,8 +6,6 @@
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.MediaTrackStream = void 0;
8
8
  const stream = require("stream");
9
- const NodeDataChannel = require("node-datachannel");
10
- const { Direction } = NodeDataChannel;
11
9
  /**
12
10
  * Turns a node-datachannel media track into a real Node.js stream, complete with
13
11
  * buffering, backpressure (up to a point - if the buffer fills up, messages are dropped),
@@ -1 +1 @@
1
- {"version":3,"file":"mediatrack-stream.js","sourceRoot":"","sources":["../../src/webrtc/mediatrack-stream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mediatrack-stream.js","sourceRoot":"","sources":["../../src/webrtc/mediatrack-stream.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import * as NodeDataChannel from 'node-datachannel';
1
+ import type * as NodeDataChannel from 'node-datachannel';
2
2
  import { DataChannelStream } from './datachannel-stream';
3
3
  import { RTCConnection } from './rtc-connection';
4
4
  export declare class MockRTCConnection extends RTCConnection {
@@ -52,12 +52,18 @@ export declare class RTCConnection extends EventEmitter {
52
52
  protocol: string;
53
53
  address: string;
54
54
  port: number;
55
+ candidate: string;
56
+ priority: number;
57
+ mid: string;
55
58
  };
56
59
  remote: {
57
60
  type: RTCIceCandidateType;
58
61
  protocol: string;
59
62
  address: string;
60
63
  port: number;
64
+ candidate: string;
65
+ priority: number;
66
+ mid: string;
61
67
  };
62
68
  } | undefined;
63
69
  getMirroredLocalOffer(sdpToMirror: string, options?: {
@@ -32,7 +32,7 @@ class RTCConnection extends events_1.EventEmitter {
32
32
  this.id = (0, crypto_1.randomUUID)();
33
33
  // Set to null when the connection is closed, as otherwise calling any method (including checking
34
34
  // the connection state) will segfault the process.
35
- this.rawConn = new NodeDataChannel.PeerConnection("MockRTCConnection", { iceServers: [] });
35
+ this.rawConn = new NodeDataChannel.PeerConnection("MockRTCConnection", { iceServers: [], forceMediaTransport: true });
36
36
  this._connectionMetadata = {};
37
37
  this.trackedChannels = [];
38
38
  this.trackedMediaTracks = [];
@@ -286,7 +286,7 @@ class RTCConnection extends events_1.EventEmitter {
286
286
  // again shortly, so that it never actually gets created).
287
287
  setupChannel = this.rawConn.createDataChannel('mockrtc.setup-channel');
288
288
  }
289
- this.rawConn.setLocalDescription("offer" /* Offer */);
289
+ this.rawConn.setLocalDescription(NodeDataChannel.DescriptionType.Offer);
290
290
  yield new Promise((resolve) => {
291
291
  this.rawConn.onGatheringStateChange((state) => {
292
292
  if (state === 'complete')
@@ -346,7 +346,7 @@ class RTCConnection extends events_1.EventEmitter {
346
346
  this.localDescription = undefined;
347
347
  if (rawConn.state() === 'closed')
348
348
  return;
349
- rawConn.destroy();
349
+ rawConn.close();
350
350
  this.emit('connection-closed');
351
351
  });
352
352
  }
@@ -1 +1 @@
1
- {"version":3,"file":"rtc-connection.js","sourceRoot":"","sources":["../../src/webrtc/rtc-connection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rtc-connection.js","sourceRoot":"","sources":["../../src/webrtc/rtc-connection.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mockrtc",
3
- "version": "0.3.1",
3
+ "version": "0.4.0",
4
4
  "description": "Powerful friendly WebRTC mock peer & proxy",
5
5
  "main": "dist/main.js",
6
6
  "types": "dist/main.d.ts",
@@ -44,7 +44,7 @@
44
44
  },
45
45
  "homepage": "https://github.com/httptoolkit/mockrtc#readme",
46
46
  "engines": {
47
- "node": ">=14.17.0"
47
+ "node": ">=20.0.0"
48
48
  },
49
49
  "devDependencies": {
50
50
  "@esbuild-plugins/node-globals-polyfill": "^0.1.1",
@@ -52,35 +52,35 @@
52
52
  "@types/chai": "4.3.0",
53
53
  "@types/dom-mediacapture-transform": "0.1.2",
54
54
  "@types/dom-webcodecs": "0.1.3",
55
+ "@types/lodash": "4.14.182",
55
56
  "@types/mocha": "9.1.1",
56
- "@types/node": "16.11.38",
57
+ "@types/node": "16.18.38",
57
58
  "buffer": "^6.0.3",
58
59
  "chai": "^4.3.6",
59
- "esbuild": "^0.14.23",
60
+ "esbuild": "^0.15.0",
60
61
  "karma": "^6.3.16",
61
62
  "karma-chai": "^0.1.0",
62
63
  "karma-chrome-launcher": "^3.1.0",
63
- "karma-esbuild": "^2.2.2",
64
+ "karma-esbuild": "~2.2.0",
64
65
  "karma-mocha": "^2.0.1",
65
66
  "karma-mocha-reporter": "^2.2.5",
66
67
  "mocha": "^9.2.0",
67
68
  "node-dev": "^7.1.0",
68
69
  "rollup-plugin-node-polyfills": "^0.2.1",
69
70
  "ts-node": "^10.5.0",
70
- "typedoc": "0.23.0-beta.1",
71
+ "typedoc": "^0.24.8",
71
72
  "typescript": "4.6.4",
72
73
  "util": "^0.12.4"
73
74
  },
74
75
  "dependencies": {
75
76
  "@graphql-tools/utils": "^8.8.0",
76
- "@types/lodash": "^4.14.182",
77
77
  "@types/sdp-transform": "^2.4.5",
78
78
  "graphql": "^15.8.0",
79
79
  "graphql-subscriptions": "^1.2.1",
80
80
  "graphql-tag": "^2.12.6",
81
81
  "lodash": "^4.17.21",
82
82
  "mockttp": "^3.2.1",
83
- "node-datachannel": "^0.4.0",
83
+ "node-datachannel": "^0.12.0",
84
84
  "performance-now": "^2.1.0",
85
85
  "sdp-transform": "^2.14.1"
86
86
  },
@@ -4,7 +4,7 @@
4
4
  */
5
5
 
6
6
  import * as stream from 'stream';
7
- import * as NodeDataChannel from 'node-datachannel';
7
+ import type * as NodeDataChannel from 'node-datachannel';
8
8
 
9
9
  /**
10
10
  * Turns a node-datachannel DataChannel into a real Node.js stream, complete with
@@ -4,9 +4,7 @@
4
4
  */
5
5
 
6
6
  import * as stream from 'stream';
7
- import * as NodeDataChannel from 'node-datachannel';
8
-
9
- const { Direction } = NodeDataChannel;
7
+ import type * as NodeDataChannel from 'node-datachannel';
10
8
 
11
9
  /**
12
10
  * Turns a node-datachannel media track into a real Node.js stream, complete with
@@ -3,7 +3,7 @@
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
5
 
6
- import * as NodeDataChannel from 'node-datachannel';
6
+ import type * as NodeDataChannel from 'node-datachannel';
7
7
 
8
8
  import { MockRTCControlMessage, MOCKRTC_CONTROL_CHANNEL } from './control-channel';
9
9
 
@@ -7,6 +7,7 @@ import * as _ from 'lodash';
7
7
  import { randomUUID } from 'crypto';
8
8
  import { EventEmitter } from 'events';
9
9
  import * as SDP from 'sdp-transform';
10
+
10
11
  import * as NodeDataChannel from 'node-datachannel';
11
12
 
12
13
  import type { MockRTCSessionDescription } from '../mockrtc';
@@ -36,7 +37,7 @@ export class RTCConnection extends EventEmitter {
36
37
  // Set to null when the connection is closed, as otherwise calling any method (including checking
37
38
  // the connection state) will segfault the process.
38
39
  private rawConn: NodeDataChannel.PeerConnection | null
39
- = new NodeDataChannel.PeerConnection("MockRTCConnection", { iceServers: [] });
40
+ = new NodeDataChannel.PeerConnection("MockRTCConnection", { iceServers: [], forceMediaTransport: true });
40
41
 
41
42
  private remoteDescription: RTCSessionDescriptionInit & ParsedSDP | undefined;
42
43
  private localDescription: MockRTCSessionDescription & ParsedSDP | undefined;
@@ -430,7 +431,7 @@ export class RTCConnection extends EventEmitter {
430
431
  this.localDescription = undefined;
431
432
 
432
433
  if (rawConn.state() === 'closed') return;
433
- rawConn.destroy();
434
+ rawConn.close();
434
435
  this.emit('connection-closed');
435
436
  }
436
437
 
@@ -29,27 +29,26 @@ describe("Echo steps", function () {
29
29
  const { answer } = await mockPeer.answerOffer(localOffer);
30
30
  await localConnection.setRemoteDescription(answer);
31
31
 
32
- let messages: Array<any> = [];
32
+ let messages: Array<string> = [];
33
33
  dataChannel1.addEventListener('message', (event) => messages.push("1: " + event.data));
34
34
 
35
35
  await waitForChannelOpen(dataChannel1);
36
36
  dataChannel1.send('Test message 1');
37
+ dataChannel1.send('Test message 2');
37
38
 
38
39
  const dataChannel2 = localConnection.createDataChannel("dataChannel2");
39
40
  dataChannel2.addEventListener('message', (event) => messages.push("2: " + event.data));
40
41
  await waitForChannelOpen(dataChannel2);
41
- await delay(10); // Delay to guarantee ordering
42
- dataChannel2.send('Test message 2');
43
42
 
44
- await delay(10); // Delay to guarantee ordering
45
- dataChannel1.send('Test message 3');
43
+ await delay(50); // Delay to guarantee ordering
44
+ dataChannel2.send('Test message 3');
46
45
 
47
46
  await delay(50); // Delay to guarantee delivery
48
47
 
49
48
  expect(messages).to.deep.equal([
50
49
  '1: Test message 1',
51
- '2: Test message 2',
52
- '1: Test message 3',
50
+ '1: Test message 2',
51
+ '2: Test message 3',
53
52
  ]);
54
53
  });
55
54
 
@@ -356,7 +356,7 @@ describe("MockRTC event subscriptions", function () {
356
356
 
357
357
  const mockPeer = await mockRTC.buildPeer()
358
358
  .waitForChannel()
359
- .thenClose();
359
+ .thenEcho();
360
360
 
361
361
  const localConnection = new RTCPeerConnection();
362
362
  const dataChannel = localConnection.createDataChannel("test-channel");
@@ -366,7 +366,12 @@ describe("MockRTC event subscriptions", function () {
366
366
  const { answer } = await mockPeer.answerOffer(localOffer);
367
367
  await localConnection.setRemoteDescription(answer);
368
368
 
369
- dataChannel.addEventListener('open', () => dataChannel.close());
369
+ dataChannel.addEventListener('open', () => {
370
+ // Work around https://github.com/murat-dogan/node-datachannel/issues/211
371
+ setTimeout(() => {
372
+ dataChannel.close();
373
+ }, 10);
374
+ });
370
375
 
371
376
  const channelEvent = await eventPromise;
372
377
  expect(channelEvent.peerId).to.equal(mockPeer.peerId);
@@ -54,7 +54,7 @@ describe("Connection rule matching", () => {
54
54
  dataChannel.send('local message 2');
55
55
  dataChannel.send('local message 3');
56
56
 
57
- await delay(100);
57
+ await delay(500); // Usually be much quicker locally, but can be slow in CI
58
58
 
59
59
  // Traffic is passed through untouched, as expected:
60
60
  expect(remotelyReceivedMessages).to.deep.equal([
@@ -11,7 +11,8 @@ import {
11
11
  waitForChannelClose,
12
12
  waitForState,
13
13
  setupPerfectNegotiation,
14
- getDeferred
14
+ getDeferred,
15
+ delay
15
16
  } from '../test-setup';
16
17
 
17
18
  describe("When proxying WebRTC traffic", () => {
@@ -154,6 +155,7 @@ describe("When proxying WebRTC traffic", () => {
154
155
  dataChannel.send('local message 3');
155
156
 
156
157
  await new Promise((resolve) => dataChannel.addEventListener('close', resolve));
158
+ await delay(200);
157
159
 
158
160
  expect(locallyReceivedMessages).to.deep.equal([
159
161
  'Injected message', // Injected by thenSend step
@@ -215,6 +217,7 @@ describe("When proxying WebRTC traffic", () => {
215
217
  dataChannel.send('local message 3');
216
218
 
217
219
  await new Promise((resolve) => dataChannel.addEventListener('close', resolve));
220
+ await delay(200);
218
221
 
219
222
  expect(locallyReceivedMessages).to.deep.equal([
220
223
  'Injected message', // Injected by thenSend step
@@ -284,6 +287,7 @@ describe("When proxying WebRTC traffic", () => {
284
287
  dataChannel.send('local message 3');
285
288
 
286
289
  await new Promise((resolve) => dataChannel.addEventListener('close', resolve));
290
+ await delay(200);
287
291
 
288
292
  expect(locallyReceivedMessages).to.deep.equal([
289
293
  'Injected message', // Injected by send step
@@ -343,6 +347,7 @@ describe("When proxying WebRTC traffic", () => {
343
347
  dataChannel.send('local message 3');
344
348
 
345
349
  await new Promise((resolve) => dataChannel.addEventListener('close', resolve));
350
+ await delay(200);
346
351
 
347
352
  expect(locallyReceivedMessages).to.deep.equal([
348
353
  'Injected message', // Injected by send step
@@ -5,6 +5,7 @@
5
5
 
6
6
  import {
7
7
  MockRTC,
8
+ delay,
8
9
  expect,
9
10
  waitForChannelClose
10
11
  } from '../test-setup';
@@ -32,13 +33,14 @@ describe("Send steps", function () {
32
33
  await localConnection.setRemoteDescription(answer);
33
34
 
34
35
  // Wait for a response:
35
- let messages: Array<any> = [];
36
+ let messages: Array<string> = [];
36
37
  dataChannel1.addEventListener('message', (event) => messages.push("1: " + event.data));
37
38
  dataChannel2.addEventListener('message', (event) => messages.push("2: " + event.data));
38
39
 
39
40
  await waitForChannelClose(dataChannel1);
41
+ await delay(1);
40
42
 
41
- expect(messages).to.deep.equal([
43
+ expect(messages.sort()).to.deep.equal([
42
44
  '1: Hello and goodbye',
43
45
  '2: Hello and goodbye',
44
46
  ]);
@@ -66,6 +68,7 @@ describe("Send steps", function () {
66
68
  dataChannel2.addEventListener('message', (event) => messages.push("2: " + event.data));
67
69
 
68
70
  await waitForChannelClose(dataChannel1);
71
+ await delay(1);
69
72
 
70
73
  // We only see a 2nd channel message:
71
74
  expect(messages).to.deep.equal([
@@ -112,12 +115,13 @@ describe("Send steps", function () {
112
115
  await localConnection.setRemoteDescription(answer);
113
116
 
114
117
  // Wait for a response:
115
- let messages: Array<any> = [];
118
+ let messages: Array<Buffer> = [];
116
119
  dataChannel1.addEventListener('message', (event) => {
117
120
  messages.push(Buffer.from(event.data)); // ArrayBuffer -> node Buffer
118
121
  });
119
122
 
120
123
  await waitForChannelClose(dataChannel1);
124
+ await delay(1);
121
125
 
122
126
  expect(messages.map(m => m.toString('utf8'))).to.deep.equal([
123
127
  'Hello from buffer'
@@ -87,7 +87,7 @@ describe("MockRTC smoke test:", function () {
87
87
  channel.send("remote message 2");
88
88
  });
89
89
 
90
- await delay(200);
90
+ await delay(500);
91
91
 
92
92
  expect(log).to.deep.equal([
93
93
  'LOCAL: MockRTC injected message',