mockrtc 0.2.0 → 0.3.1

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 (84) hide show
  1. package/.github/workflows/ci.yml +2 -2
  2. package/dist/client/mockrtc-admin-request-builder.d.ts +7 -1
  3. package/dist/client/mockrtc-admin-request-builder.js +30 -0
  4. package/dist/client/mockrtc-admin-request-builder.js.map +1 -1
  5. package/dist/client/mockrtc-client.d.ts +8 -4
  6. package/dist/client/mockrtc-client.js +21 -9
  7. package/dist/client/mockrtc-client.js.map +1 -1
  8. package/dist/handling/handler-builder.d.ts +16 -9
  9. package/dist/handling/handler-builder.js +11 -1
  10. package/dist/handling/handler-builder.js.map +1 -1
  11. package/dist/handling/handler-step-definitions.d.ts +40 -23
  12. package/dist/handling/handler-step-definitions.js +61 -19
  13. package/dist/handling/handler-step-definitions.js.map +1 -1
  14. package/dist/handling/handler-steps.d.ts +11 -1
  15. package/dist/handling/handler-steps.js +33 -16
  16. package/dist/handling/handler-steps.js.map +1 -1
  17. package/dist/main-browser.d.ts +1 -0
  18. package/dist/main-browser.js +2 -1
  19. package/dist/main-browser.js.map +1 -1
  20. package/dist/main.d.ts +5 -3
  21. package/dist/main.js +2 -1
  22. package/dist/main.js.map +1 -1
  23. package/dist/matching/matcher-definitions.d.ts +51 -0
  24. package/dist/matching/matcher-definitions.js +94 -0
  25. package/dist/matching/matcher-definitions.js.map +1 -0
  26. package/dist/matching/matchers.d.ts +27 -0
  27. package/dist/matching/matchers.js +87 -0
  28. package/dist/matching/matchers.js.map +1 -0
  29. package/dist/mockrtc-base.d.ts +16 -0
  30. package/dist/mockrtc-base.js +19 -0
  31. package/dist/mockrtc-base.js.map +1 -0
  32. package/dist/mockrtc-peer.d.ts +9 -2
  33. package/dist/mockrtc.d.ts +62 -0
  34. package/dist/mockrtc.js.map +1 -1
  35. package/dist/rule-builder.d.ts +86 -0
  36. package/dist/rule-builder.js +113 -0
  37. package/dist/rule-builder.js.map +1 -0
  38. package/dist/server/mockrtc-admin-plugin.js +18 -1
  39. package/dist/server/mockrtc-admin-plugin.js.map +1 -1
  40. package/dist/server/mockrtc-server-peer.d.ts +1 -1
  41. package/dist/server/mockrtc-server-peer.js +19 -7
  42. package/dist/server/mockrtc-server-peer.js.map +1 -1
  43. package/dist/server/mockrtc-server.d.ts +12 -5
  44. package/dist/server/mockrtc-server.js +53 -18
  45. package/dist/server/mockrtc-server.js.map +1 -1
  46. package/dist/webrtc/datachannel-stream.d.ts +2 -0
  47. package/dist/webrtc/datachannel-stream.js +15 -1
  48. package/dist/webrtc/datachannel-stream.js.map +1 -1
  49. package/dist/webrtc/mediatrack-stream.d.ts +2 -0
  50. package/dist/webrtc/mediatrack-stream.js +15 -1
  51. package/dist/webrtc/mediatrack-stream.js.map +1 -1
  52. package/dist/webrtc/mockrtc-connection.js +1 -1
  53. package/dist/webrtc/mockrtc-connection.js.map +1 -1
  54. package/dist/webrtc/rtc-connection.d.ts +6 -2
  55. package/dist/webrtc/rtc-connection.js +21 -21
  56. package/dist/webrtc/rtc-connection.js.map +1 -1
  57. package/dist/webrtc-hooks.js +8 -2
  58. package/dist/webrtc-hooks.js.map +1 -1
  59. package/package.json +2 -2
  60. package/src/client/mockrtc-admin-request-builder.ts +49 -1
  61. package/src/client/mockrtc-client.ts +28 -10
  62. package/src/handling/handler-builder.ts +22 -10
  63. package/src/handling/handler-step-definitions.ts +81 -23
  64. package/src/handling/handler-steps.ts +42 -15
  65. package/src/main-browser.ts +1 -0
  66. package/src/main.ts +5 -1
  67. package/src/matching/matcher-definitions.ts +109 -0
  68. package/src/matching/matchers.ts +118 -0
  69. package/src/mockrtc-base.ts +49 -0
  70. package/src/mockrtc-peer.ts +9 -2
  71. package/src/mockrtc.ts +72 -0
  72. package/src/rule-builder.ts +142 -0
  73. package/src/server/mockrtc-admin-plugin.ts +41 -3
  74. package/src/server/mockrtc-server-peer.ts +28 -18
  75. package/src/server/mockrtc-server.ts +71 -15
  76. package/src/webrtc/datachannel-stream.ts +15 -1
  77. package/src/webrtc/mediatrack-stream.ts +15 -1
  78. package/src/webrtc/mockrtc-connection.ts +1 -1
  79. package/src/webrtc/rtc-connection.ts +37 -20
  80. package/src/webrtc-hooks.ts +8 -2
  81. package/test/integration/events.spec.ts +3 -1
  82. package/test/integration/matching.spec.ts +189 -0
  83. package/test/integration/proxy.spec.ts +4 -2
  84. package/test/integration/send-steps.spec.ts +51 -0
@@ -1 +1 @@
1
- {"version":3,"file":"mockrtc-server.js","sourceRoot":"","sources":["../../src/server/mockrtc-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mockrtc-server.js","sourceRoot":"","sources":["../../src/server/mockrtc-server.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,8 @@ export declare class DataChannelStream extends stream.Duplex {
16
16
  writableHighWaterMark?: number | undefined;
17
17
  allowHalfOpen?: boolean;
18
18
  });
19
+ private _isOpen;
20
+ get isOpen(): boolean;
19
21
  private _readActive;
20
22
  _read(): void;
21
23
  _write(chunk: string | Buffer | unknown, encoding: string, callback: (error: Error | null) => void): void;
@@ -19,6 +19,7 @@ class DataChannelStream extends stream.Duplex {
19
19
  super(Object.assign(Object.assign({ allowHalfOpen: false }, streamOptions), { objectMode: true // Preserve the string/buffer distinction (WebRTC treats them differently)
20
20
  }));
21
21
  this.rawChannel = rawChannel;
22
+ this._isOpen = false;
22
23
  this._readActive = true;
23
24
  rawChannel.onMessage((msg) => {
24
25
  // Independently of the stream and it's normal events, we also fire our own
@@ -42,8 +43,21 @@ class DataChannelStream extends stream.Duplex {
42
43
  // Buffer all writes until the DataChannel opens
43
44
  if (!rawChannel.isOpen()) {
44
45
  this.cork();
45
- rawChannel.onOpen(() => this.uncork());
46
+ rawChannel.onOpen(() => {
47
+ this.uncork();
48
+ this._isOpen = true;
49
+ this.emit('channel-open');
50
+ });
46
51
  }
52
+ else {
53
+ setImmediate(() => {
54
+ this._isOpen = true;
55
+ this.emit('channel-open');
56
+ });
57
+ }
58
+ }
59
+ get isOpen() {
60
+ return this._isOpen;
47
61
  }
48
62
  _read() {
49
63
  // Stop dropping messages, if the buffer filling up meant we were doing so before.
@@ -1 +1 @@
1
- {"version":3,"file":"datachannel-stream.js","sourceRoot":"","sources":["../../src/webrtc/datachannel-stream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"datachannel-stream.js","sourceRoot":"","sources":["../../src/webrtc/datachannel-stream.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,8 @@ export declare class MediaTrackStream extends stream.Duplex {
13
13
  writableHighWaterMark?: number | undefined;
14
14
  allowHalfOpen?: boolean;
15
15
  });
16
+ private _isOpen;
17
+ get isOpen(): boolean;
16
18
  private _totalBytesSent;
17
19
  get totalBytesSent(): number;
18
20
  private _totalBytesReceived;
@@ -17,6 +17,7 @@ class MediaTrackStream extends stream.Duplex {
17
17
  constructor(rawTrack, streamOptions = {}) {
18
18
  super(Object.assign({ allowHalfOpen: false }, streamOptions));
19
19
  this.rawTrack = rawTrack;
20
+ this._isOpen = false;
20
21
  this._totalBytesSent = 0;
21
22
  this._totalBytesReceived = 0;
22
23
  this._readActive = true;
@@ -35,8 +36,21 @@ class MediaTrackStream extends stream.Duplex {
35
36
  // Buffer all writes until the DataChannel opens
36
37
  if (!rawTrack.isOpen()) {
37
38
  this.cork();
38
- rawTrack.onOpen(() => this.uncork());
39
+ rawTrack.onOpen(() => {
40
+ this.uncork();
41
+ this._isOpen = true;
42
+ this.emit('track-open');
43
+ });
39
44
  }
45
+ else {
46
+ setImmediate(() => {
47
+ this._isOpen = true;
48
+ this.emit('track-open');
49
+ });
50
+ }
51
+ }
52
+ get isOpen() {
53
+ return this._isOpen;
40
54
  }
41
55
  get totalBytesSent() {
42
56
  return this._totalBytesSent;
@@ -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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"}
@@ -131,7 +131,7 @@ class MockRTCConnection extends rtc_connection_1.RTCConnection {
131
131
  });
132
132
  // If any new channels open in future, mirror them to the other peer:
133
133
  [[this, externalConnection], [externalConnection, this]].forEach(([connA, connB]) => {
134
- connA.on('remote-channel-open', (incomingChannel) => {
134
+ connA.on('remote-channel-created', (incomingChannel) => {
135
135
  const mirrorChannelStream = connB.createDataChannel(incomingChannel.label);
136
136
  incomingChannel.pipe(mirrorChannelStream).pipe(incomingChannel);
137
137
  });
@@ -1 +1 @@
1
- {"version":3,"file":"mockrtc-connection.js","sourceRoot":"","sources":["../../src/webrtc/mockrtc-connection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mockrtc-connection.js","sourceRoot":"","sources":["../../src/webrtc/mockrtc-connection.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,14 @@
1
1
  /// <reference types="node" />
2
2
  import { EventEmitter } from 'events';
3
+ import * as SDP from 'sdp-transform';
3
4
  import * as NodeDataChannel from 'node-datachannel';
4
5
  import type { MockRTCSessionDescription } from '../mockrtc';
5
6
  import { ConnectionMetadata, MockRTCSession } from '../mockrtc-peer';
6
7
  import { DataChannelStream } from './datachannel-stream';
7
8
  import { MediaTrackStream } from './mediatrack-stream';
9
+ export declare type ParsedSDP = {
10
+ parsedSdp: SDP.SessionDescription;
11
+ };
8
12
  /**
9
13
  * An RTC connection is a single connection. This base class defines the raw connection management and
10
14
  * tracking logic for a generic connection. The MockRTCConnection subclass extends this and adds
@@ -40,8 +44,8 @@ export declare class RTCConnection extends EventEmitter {
40
44
  * tracks or remote description have been provided beforehand.
41
45
  */
42
46
  buildLocalDescription(): Promise<MockRTCSessionDescription>;
43
- getRemoteDescription(): RTCSessionDescriptionInit | undefined;
44
- getLocalDescription(): MockRTCSessionDescription | undefined;
47
+ getRemoteDescription(): (RTCSessionDescriptionInit & ParsedSDP) | undefined;
48
+ getLocalDescription(): (MockRTCSessionDescription & ParsedSDP) | undefined;
45
49
  getSelectedCandidates(): {
46
50
  local: {
47
51
  type: RTCIceCandidateType;
@@ -142,13 +142,12 @@ class RTCConnection extends events_1.EventEmitter {
142
142
  channelStream.on('error', (error) => {
143
143
  console.error('Channel error:', error);
144
144
  });
145
- this.emit('channel-open', channelStream);
146
- if (options.isLocal) {
147
- this.emit('local-channel-open', channelStream);
148
- }
149
- else {
150
- this.emit('remote-channel-open', channelStream);
151
- }
145
+ this.emit('channel-created', channelStream);
146
+ this.emit(`${options.isLocal ? 'local' : 'remote'}-channel-created`, channelStream);
147
+ channelStream.once('channel-open', () => {
148
+ this.emit('channel-open', channelStream);
149
+ this.emit(`${options.isLocal ? 'local' : 'remote'}-channel-open`, channelStream);
150
+ });
152
151
  return channelStream;
153
152
  }
154
153
  trackNewMediaTrack(track, options) {
@@ -157,25 +156,25 @@ class RTCConnection extends events_1.EventEmitter {
157
156
  trackStream.on('close', () => {
158
157
  const trackIndex = this.trackedMediaTracks.findIndex(c => c.stream === trackStream);
159
158
  if (trackIndex !== -1) {
160
- this.trackedChannels.splice(trackIndex, 1);
159
+ this.trackedMediaTracks.splice(trackIndex, 1);
161
160
  }
162
161
  });
163
162
  trackStream.on('error', (error) => {
164
163
  console.error('Media track error:', error);
165
164
  });
166
- this.emit('track-open', trackStream);
167
- if (options.isLocal) {
168
- this.emit('local-track-open', trackStream);
169
- }
170
- else {
171
- this.emit('remote-track-open', trackStream);
172
- }
165
+ this.emit('track-created', trackStream);
166
+ this.emit(`${options.isLocal ? 'local' : 'remote'}-track-created`, trackStream);
167
+ trackStream.once('track-open', () => {
168
+ this.emit('track-open', trackStream);
169
+ this.emit(`${options.isLocal ? 'local' : 'remote'}-track-open`, trackStream);
170
+ });
173
171
  return trackStream;
174
172
  }
175
173
  setRemoteDescription(description) {
174
+ var _a;
176
175
  if (!this.rawConn)
177
176
  throw new Error("Can't set remote description after connection is closed");
178
- this.remoteDescription = description;
177
+ this.remoteDescription = Object.assign(Object.assign({}, description), { parsedSdp: SDP.parse((_a = description.sdp) !== null && _a !== void 0 ? _a : '') });
179
178
  const { type: offerType, sdp: offerSdp } = description;
180
179
  if (!offerSdp)
181
180
  throw new Error("Cannot set MockRTC peer description without providing an SDP");
@@ -187,6 +186,7 @@ class RTCConnection extends events_1.EventEmitter {
187
186
  * tracks or remote description have been provided beforehand.
188
187
  */
189
188
  buildLocalDescription() {
189
+ var _a;
190
190
  return __awaiter(this, void 0, void 0, function* () {
191
191
  if (!this.rawConn)
192
192
  throw new Error("Can't get local description after connection is closed");
@@ -211,7 +211,7 @@ class RTCConnection extends events_1.EventEmitter {
211
211
  throw new Error("Connection was closed while building local description");
212
212
  const sessionDescription = this.rawConn.localDescription();
213
213
  setupChannel === null || setupChannel === void 0 ? void 0 : setupChannel.close(); // Close the temporary setup channel, if we created one
214
- this.localDescription = sessionDescription;
214
+ this.localDescription = Object.assign(Object.assign({}, sessionDescription), { parsedSdp: SDP.parse((_a = sessionDescription.sdp) !== null && _a !== void 0 ? _a : '') });
215
215
  return sessionDescription;
216
216
  });
217
217
  }
@@ -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("offer" /* Offer */);
290
290
  yield new Promise((resolve) => {
291
291
  this.rawConn.onGatheringStateChange((state) => {
292
292
  if (state === 'complete')
@@ -303,7 +303,7 @@ class RTCConnection extends events_1.EventEmitter {
303
303
  const offerSDP = SDP.parse(localDesc.sdp);
304
304
  mirrorMediaParams(offerToMirror, offerSDP);
305
305
  localDesc.sdp = SDP.write(offerSDP);
306
- this.localDescription = localDesc;
306
+ this.localDescription = Object.assign(Object.assign({}, localDesc), { parsedSdp: offerSDP });
307
307
  return this.localDescription;
308
308
  });
309
309
  }
@@ -314,7 +314,7 @@ class RTCConnection extends events_1.EventEmitter {
314
314
  const answerSDP = SDP.parse(localDesc.sdp);
315
315
  mirrorMediaParams(answerToMirror, answerSDP);
316
316
  localDesc.sdp = SDP.write(answerSDP);
317
- this.localDescription = localDesc;
317
+ this.localDescription = Object.assign(Object.assign({}, localDesc), { parsedSdp: answerSDP });
318
318
  return this.localDescription;
319
319
  });
320
320
  }
@@ -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.close();
349
+ rawConn.destroy();
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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"}
@@ -150,7 +150,10 @@ function hookWebRTCConnection(conn, mockPeer) {
150
150
  mockOffer = mockPeer.createOffer({
151
151
  mirrorSDP: remoteDescription.sdp,
152
152
  addDataStream: true,
153
- connectionMetadata: { userAgent: navigator.userAgent }
153
+ connectionMetadata: {
154
+ userAgent: navigator.userAgent,
155
+ sourceURL: window.location.href
156
+ }
154
157
  });
155
158
  yield _setRemoteDescription((yield mockOffer).offer);
156
159
  }
@@ -163,7 +166,10 @@ function hookWebRTCConnection(conn, mockPeer) {
163
166
  // Complete the internal <-> mock connection:
164
167
  mockPeer.answerOffer(realOffer, {
165
168
  mirrorSDP: remoteDescription.sdp,
166
- connectionMetadata: { userAgent: navigator.userAgent }
169
+ connectionMetadata: {
170
+ userAgent: navigator.userAgent,
171
+ sourceURL: window.location.href
172
+ }
167
173
  }).then(({ answer }) => _setRemoteDescription(answer))
168
174
  ]);
169
175
  currentLocalDescription = pendingLocalDescription;
@@ -1 +1 @@
1
- {"version":3,"file":"webrtc-hooks.js","sourceRoot":"","sources":["../src/webrtc-hooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webrtc-hooks.js","sourceRoot":"","sources":["../src/webrtc-hooks.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mockrtc",
3
- "version": "0.2.0",
3
+ "version": "0.3.1",
4
4
  "description": "Powerful friendly WebRTC mock peer & proxy",
5
5
  "main": "dist/main.js",
6
6
  "types": "dist/main.d.ts",
@@ -80,7 +80,7 @@
80
80
  "graphql-tag": "^2.12.6",
81
81
  "lodash": "^4.17.21",
82
82
  "mockttp": "^3.2.1",
83
- "node-datachannel": "^0.3.0",
83
+ "node-datachannel": "^0.4.0",
84
84
  "performance-now": "^2.1.0",
85
85
  "sdp-transform": "^2.14.1"
86
86
  },
@@ -13,8 +13,9 @@ import * as stream from 'stream';
13
13
  import * as BrowserPluggableAdmin from 'mockttp/dist/pluggable-admin-api/pluggable-admin.browser';
14
14
  import { AdminQuery } from 'mockttp/dist/client/admin-query';
15
15
 
16
- import { HandlerStepDefinition } from '../handling/handler-step-definitions';
17
16
  import { MockRTCEvent, MockRTCEventData } from '../mockrtc';
17
+ import { HandlerStepDefinition } from '../handling/handler-step-definitions';
18
+ import { MatcherDefinition } from '../matching/matcher-definitions';
18
19
 
19
20
  /**
20
21
  * This is part of Mockttp's experimental 'pluggable admin' API. This may change
@@ -50,6 +51,53 @@ export class MockRTCAdminRequestBuilder {
50
51
  };
51
52
  }
52
53
 
54
+ buildAddRuleQuery(
55
+ matchers: Array<MatcherDefinition>,
56
+ handlerSteps: Array<HandlerStepDefinition>,
57
+ adminStream: stream.Duplex
58
+ ): AdminQuery<void> {
59
+ return {
60
+ query: gql`
61
+ mutation AddRTCRule($ruleData: RTCRuleData!) {
62
+ addRTCRule(data: $ruleData)
63
+ }
64
+ `,
65
+ variables: {
66
+ ruleData: {
67
+ matchers: matchers.map(matcher =>
68
+ BrowserPluggableAdmin.Serialization.serialize(matcher, adminStream)
69
+ ),
70
+ steps: handlerSteps.map(step =>
71
+ BrowserPluggableAdmin.Serialization.serialize(step, adminStream)
72
+ )
73
+ }
74
+ }
75
+ };
76
+ }
77
+
78
+ buildSetRulesQuery(
79
+ rules: Array<{ matchers: MatcherDefinition[], steps: HandlerStepDefinition[] }>,
80
+ adminStream: stream.Duplex
81
+ ): AdminQuery<void> {
82
+ return {
83
+ query: gql`
84
+ mutation SetRTCRules($ruleData: [RTCRuleData!]!) {
85
+ setRTCRules(data: $ruleData)
86
+ }
87
+ `,
88
+ variables: {
89
+ ruleData: rules.map(({ matchers, steps }) => ({
90
+ matchers: matchers.map(matcher =>
91
+ BrowserPluggableAdmin.Serialization.serialize(matcher, adminStream)
92
+ ),
93
+ steps: steps.map(step =>
94
+ BrowserPluggableAdmin.Serialization.serialize(step, adminStream)
95
+ )
96
+ }))
97
+ }
98
+ };
99
+ }
100
+
53
101
  buildSubscriptionRequest<E extends MockRTCEvent>(event: E): AdminQuery<MockRTCEventData[E]> | undefined {
54
102
  const query = {
55
103
  'peer-connected': gql`subscription OnPeerConnected {
@@ -11,20 +11,21 @@
11
11
  import * as BrowserPluggableAdmin from 'mockttp/dist/pluggable-admin-api/pluggable-admin.browser';
12
12
  import type { PluggableAdmin } from 'mockttp';
13
13
 
14
- import { MockRTC, MockRTCEvent, MockRTCOptions, MockRTCPeerBuilder } from "../mockrtc";
14
+ import { MockRTC, MockRTCEvent, MockRTCOptions, MockRTCRuleDefinition } from "../mockrtc";
15
+ import { MockRTCBase } from '../mockrtc-base';
15
16
 
16
- import type { MockRTCAdminPlugin } from "../server/mockrtc-admin-plugin";
17
17
  import type { MockRTCPeer } from '../mockrtc-peer';
18
18
  import { MockRTCRemotePeer } from './mockrtc-remote-peer';
19
- import { MockRTCHandlerBuilder } from '../handling/handler-builder';
20
- import { HandlerStepDefinition } from '../handling/handler-step-definitions';
19
+ import type { MockRTCAdminPlugin } from "../server/mockrtc-admin-plugin";
21
20
  import { MockRTCAdminRequestBuilder } from './mockrtc-admin-request-builder';
21
+ import { HandlerStepDefinition } from '../handling/handler-step-definitions';
22
+ import { MatcherDefinition } from '../matching/matcher-definitions';
22
23
 
23
24
  export type MockRTCClientOptions =
24
25
  PluggableAdmin.AdminClientOptions &
25
26
  MockRTCOptions;
26
27
 
27
- export class MockRTCClient implements MockRTC {
28
+ export class MockRTCClient extends MockRTCBase implements MockRTC {
28
29
 
29
30
  private adminClient: PluggableAdmin.AdminClient<{ webrtc: MockRTCAdminPlugin }>;
30
31
  private requestBuilder: MockRTCAdminRequestBuilder;
@@ -32,6 +33,8 @@ export class MockRTCClient implements MockRTC {
32
33
  constructor(
33
34
  private options: MockRTCClientOptions = {}
34
35
  ) {
36
+ super();
37
+
35
38
  this.adminClient = new BrowserPluggableAdmin.AdminClient(options);
36
39
  this.requestBuilder = new MockRTCAdminRequestBuilder();
37
40
  }
@@ -40,11 +43,7 @@ export class MockRTCClient implements MockRTC {
40
43
  return new MockRTCRemotePeer('matching-peer', this.adminClient);
41
44
  }
42
45
 
43
- buildPeer(): MockRTCPeerBuilder {
44
- return new MockRTCHandlerBuilder(this.buildPeerFromData);
45
- }
46
-
47
- private buildPeerFromData = async (handlerSteps: HandlerStepDefinition[]): Promise<MockRTCPeer> => {
46
+ async buildPeerFromDefinition(handlerSteps: HandlerStepDefinition[]): Promise<MockRTCPeer> {
48
47
  const { adminStream } = this.adminClient;
49
48
 
50
49
  const peerData = await this.adminClient.sendQuery(
@@ -56,6 +55,25 @@ export class MockRTCClient implements MockRTC {
56
55
  return new MockRTCRemotePeer(peerId, this.adminClient);
57
56
  }
58
57
 
58
+ async addRuleFromDefinition(
59
+ matchers: MatcherDefinition[],
60
+ handlerSteps: HandlerStepDefinition[]
61
+ ) {
62
+ const { adminStream } = this.adminClient;
63
+
64
+ await this.adminClient.sendQuery(
65
+ this.requestBuilder.buildAddRuleQuery(matchers, handlerSteps, adminStream)
66
+ );
67
+ }
68
+
69
+ async setRulesFromDefinitions(rules: Array<MockRTCRuleDefinition>) {
70
+ const { adminStream } = this.adminClient;
71
+
72
+ await this.adminClient.sendQuery(
73
+ this.requestBuilder.buildSetRulesQuery(rules, adminStream)
74
+ );
75
+ }
76
+
59
77
  async start(): Promise<void> {
60
78
  await this.adminClient.start({
61
79
  webrtc: this.options