@libp2p/interface-compliance-tests 1.1.22 → 1.1.25

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 (55) hide show
  1. package/dist/src/mocks/connection-manager.d.ts +0 -8
  2. package/dist/src/mocks/connection-manager.d.ts.map +1 -1
  3. package/dist/src/mocks/connection-manager.js +4 -16
  4. package/dist/src/mocks/connection-manager.js.map +1 -1
  5. package/dist/src/mocks/connection.d.ts +2 -1
  6. package/dist/src/mocks/connection.d.ts.map +1 -1
  7. package/dist/src/mocks/connection.js +4 -4
  8. package/dist/src/mocks/connection.js.map +1 -1
  9. package/dist/src/mocks/registrar.d.ts +2 -5
  10. package/dist/src/mocks/registrar.d.ts.map +1 -1
  11. package/dist/src/mocks/registrar.js +4 -4
  12. package/dist/src/mocks/registrar.js.map +1 -1
  13. package/dist/src/pubsub/api.d.ts +2 -2
  14. package/dist/src/pubsub/api.d.ts.map +1 -1
  15. package/dist/src/pubsub/api.js +18 -21
  16. package/dist/src/pubsub/api.js.map +1 -1
  17. package/dist/src/pubsub/connection-handlers.d.ts +2 -2
  18. package/dist/src/pubsub/connection-handlers.d.ts.map +1 -1
  19. package/dist/src/pubsub/connection-handlers.js +84 -162
  20. package/dist/src/pubsub/connection-handlers.js.map +1 -1
  21. package/dist/src/pubsub/emit-self.d.ts +2 -2
  22. package/dist/src/pubsub/emit-self.d.ts.map +1 -1
  23. package/dist/src/pubsub/emit-self.js +18 -12
  24. package/dist/src/pubsub/emit-self.js.map +1 -1
  25. package/dist/src/pubsub/index.d.ts +2 -3
  26. package/dist/src/pubsub/index.d.ts.map +1 -1
  27. package/dist/src/pubsub/index.js.map +1 -1
  28. package/dist/src/pubsub/messages.d.ts +2 -2
  29. package/dist/src/pubsub/messages.d.ts.map +1 -1
  30. package/dist/src/pubsub/messages.js +13 -74
  31. package/dist/src/pubsub/messages.js.map +1 -1
  32. package/dist/src/pubsub/multiple-nodes.d.ts +2 -2
  33. package/dist/src/pubsub/multiple-nodes.d.ts.map +1 -1
  34. package/dist/src/pubsub/multiple-nodes.js +87 -167
  35. package/dist/src/pubsub/multiple-nodes.js.map +1 -1
  36. package/dist/src/pubsub/two-nodes.d.ts +2 -2
  37. package/dist/src/pubsub/two-nodes.d.ts.map +1 -1
  38. package/dist/src/pubsub/two-nodes.js +51 -84
  39. package/dist/src/pubsub/two-nodes.js.map +1 -1
  40. package/dist/src/pubsub/utils.d.ts +5 -2
  41. package/dist/src/pubsub/utils.d.ts.map +1 -1
  42. package/dist/src/pubsub/utils.js +12 -2
  43. package/dist/src/pubsub/utils.js.map +1 -1
  44. package/package.json +1 -1
  45. package/src/mocks/connection-manager.ts +4 -20
  46. package/src/mocks/connection.ts +5 -5
  47. package/src/mocks/registrar.ts +6 -10
  48. package/src/pubsub/api.ts +20 -24
  49. package/src/pubsub/connection-handlers.ts +97 -180
  50. package/src/pubsub/emit-self.ts +23 -15
  51. package/src/pubsub/index.ts +2 -3
  52. package/src/pubsub/messages.ts +18 -99
  53. package/src/pubsub/multiple-nodes.ts +106 -184
  54. package/src/pubsub/two-nodes.ts +61 -98
  55. package/src/pubsub/utils.ts +16 -5
@@ -4,38 +4,27 @@ import pDefer from 'p-defer';
4
4
  import pWaitFor from 'p-wait-for';
5
5
  import { toString as uint8ArrayToString } from 'uint8arrays/to-string';
6
6
  import { fromString as uint8ArrayFromString } from 'uint8arrays/from-string';
7
- import { createEd25519PeerId } from '@libp2p/peer-id-factory';
8
- import { connectPeers, mockRegistrar } from '../mocks/registrar.js';
9
- import { CustomEvent } from '@libp2p/interfaces';
10
- import { Components } from '@libp2p/interfaces/components';
7
+ import { connectPeers } from '../mocks/registrar.js';
11
8
  import { start, stop } from '../index.js';
9
+ import { createComponents } from './utils.js';
10
+ import { pEvent } from 'p-event';
12
11
  export default (common) => {
13
12
  describe('pubsub connection handlers', () => {
14
13
  let psA;
15
14
  let psB;
16
- let peerA;
17
- let peerB;
18
- let registrarA;
19
- let registrarB;
15
+ let componentsA;
16
+ let componentsB;
20
17
  describe('nodes send state on connection', () => {
21
18
  // Create pubsub nodes and connect them
22
19
  before(async () => {
23
- peerA = await createEd25519PeerId();
24
- peerB = await createEd25519PeerId();
25
- registrarA = mockRegistrar();
26
- registrarB = mockRegistrar();
20
+ componentsA = await createComponents();
21
+ componentsB = await createComponents();
27
22
  psA = await common.setup({
28
- components: new Components({
29
- peerId: peerA,
30
- registrar: registrarA
31
- }),
23
+ components: componentsA,
32
24
  init: {}
33
25
  });
34
26
  psB = await common.setup({
35
- components: new Components({
36
- peerId: peerB,
37
- registrar: registrarB
38
- }),
27
+ components: componentsB,
39
28
  init: {}
40
29
  });
41
30
  // Start pubsub
@@ -58,54 +47,34 @@ export default (common) => {
58
47
  });
59
48
  it('existing subscriptions are sent upon peer connection', async function () {
60
49
  const subscriptionsChanged = Promise.all([
61
- new Promise((resolve) => psA.addEventListener('pubsub:subscription-change', resolve, {
62
- once: true
63
- })),
64
- new Promise((resolve) => psB.addEventListener('pubsub:subscription-change', resolve, {
65
- once: true
66
- }))
50
+ pEvent(psA, 'subscription-change'),
51
+ pEvent(psB, 'subscription-change')
67
52
  ]);
68
- await connectPeers(psA.multicodecs[0], {
69
- peerId: peerA,
70
- registrar: registrarA
71
- }, {
72
- peerId: peerB,
73
- registrar: registrarB
74
- });
53
+ await connectPeers(psA.multicodecs[0], componentsA, componentsB);
75
54
  await subscriptionsChanged;
76
55
  expect(psA.getPeers()).to.have.lengthOf(1);
77
56
  expect(psB.getPeers()).to.have.lengthOf(1);
78
57
  expect(psA.getTopics()).to.deep.equal(['Za']);
79
58
  expect(psB.getTopics()).to.deep.equal(['Zb']);
80
- expect(psA.getSubscribers('Zb').map(p => p.toString())).to.deep.equal([peerB.toString()]);
81
- expect(psB.getSubscribers('Za').map(p => p.toString())).to.deep.equal([peerA.toString()]);
59
+ expect(psA.getSubscribers('Zb').map(p => p.toString())).to.deep.equal([componentsB.getPeerId().toString()]);
60
+ expect(psB.getSubscribers('Za').map(p => p.toString())).to.deep.equal([componentsA.getPeerId().toString()]);
82
61
  });
83
62
  });
84
63
  describe('pubsub started before connect', () => {
85
64
  let psA;
86
65
  let psB;
87
- let peerA;
88
- let peerB;
89
- let registrarA;
90
- let registrarB;
66
+ let componentsA;
67
+ let componentsB;
91
68
  // Create pubsub nodes and start them
92
69
  beforeEach(async () => {
93
- peerA = await createEd25519PeerId();
94
- peerB = await createEd25519PeerId();
95
- registrarA = mockRegistrar();
96
- registrarB = mockRegistrar();
70
+ componentsA = await createComponents();
71
+ componentsB = await createComponents();
97
72
  psA = await common.setup({
98
- components: new Components({
99
- peerId: peerA,
100
- registrar: registrarA
101
- }),
73
+ components: componentsA,
102
74
  init: {}
103
75
  });
104
76
  psB = await common.setup({
105
- components: new Components({
106
- peerId: peerB,
107
- registrar: registrarB
108
- }),
77
+ components: componentsB,
109
78
  init: {}
110
79
  });
111
80
  await start(psA, psB);
@@ -115,13 +84,7 @@ export default (common) => {
115
84
  await common.teardown();
116
85
  });
117
86
  it('should get notified of connected peers on dial', async () => {
118
- await connectPeers(psA.multicodecs[0], {
119
- peerId: peerA,
120
- registrar: registrarA
121
- }, {
122
- peerId: peerB,
123
- registrar: registrarB
124
- });
87
+ await connectPeers(psA.multicodecs[0], componentsA, componentsB);
125
88
  return await Promise.all([
126
89
  pWaitFor(() => psA.getPeers().length === 1),
127
90
  pWaitFor(() => psB.getPeers().length === 1)
@@ -131,19 +94,16 @@ export default (common) => {
131
94
  const defer = pDefer();
132
95
  const topic = 'test-topic';
133
96
  const data = uint8ArrayFromString('hey!');
134
- await connectPeers(psA.multicodecs[0], {
135
- peerId: peerA,
136
- registrar: registrarA
137
- }, {
138
- peerId: peerB,
139
- registrar: registrarB
140
- });
97
+ await connectPeers(psA.multicodecs[0], componentsA, componentsB);
141
98
  let subscribedTopics = psA.getTopics();
142
99
  expect(subscribedTopics).to.not.include(topic);
143
- psA.addEventListener(topic, (evt) => {
144
- const msg = evt.detail;
145
- expect(msg.data).to.equalBytes(data);
146
- defer.resolve();
100
+ psA.subscribe(topic);
101
+ psA.addEventListener('message', (evt) => {
102
+ if (evt.detail.topic === topic) {
103
+ const msg = evt.detail;
104
+ expect(msg.data).to.equalBytes(data);
105
+ defer.resolve();
106
+ }
147
107
  });
148
108
  psA.subscribe(topic);
149
109
  subscribedTopics = psA.getTopics();
@@ -151,37 +111,27 @@ export default (common) => {
151
111
  // wait for psB to know about psA subscription
152
112
  await pWaitFor(() => {
153
113
  const subscribedPeers = psB.getSubscribers(topic);
154
- return subscribedPeers.map(p => p.toString()).includes(peerA.toString());
114
+ return subscribedPeers.map(p => p.toString()).includes(componentsA.getPeerId().toString()); // eslint-disable-line max-nested-callbacks
155
115
  });
156
- void psB.dispatchEvent(new CustomEvent(topic, { detail: data }));
116
+ await psB.publish(topic, data);
157
117
  await defer.promise;
158
118
  });
159
119
  });
160
120
  describe('pubsub started after connect', () => {
161
121
  let psA;
162
122
  let psB;
163
- let peerA;
164
- let peerB;
165
- let registrarA;
166
- let registrarB;
123
+ let componentsA;
124
+ let componentsB;
167
125
  // Create pubsub nodes
168
126
  beforeEach(async () => {
169
- peerA = await createEd25519PeerId();
170
- peerB = await createEd25519PeerId();
171
- registrarA = mockRegistrar();
172
- registrarB = mockRegistrar();
127
+ componentsA = await createComponents();
128
+ componentsB = await createComponents();
173
129
  psA = await common.setup({
174
- components: new Components({
175
- peerId: peerA,
176
- registrar: registrarA
177
- }),
130
+ components: componentsA,
178
131
  init: {}
179
132
  });
180
133
  psB = await common.setup({
181
- components: new Components({
182
- peerId: peerB,
183
- registrar: registrarB
184
- }),
134
+ components: componentsB,
185
135
  init: {}
186
136
  });
187
137
  });
@@ -192,13 +142,7 @@ export default (common) => {
192
142
  });
193
143
  it('should get notified of connected peers after starting', async () => {
194
144
  await start(psA, psB);
195
- await connectPeers(psA.multicodecs[0], {
196
- peerId: peerA,
197
- registrar: registrarA
198
- }, {
199
- peerId: peerB,
200
- registrar: registrarB
201
- });
145
+ await connectPeers(psA.multicodecs[0], componentsA, componentsB);
202
146
  return await Promise.all([
203
147
  pWaitFor(() => psA.getPeers().length === 1),
204
148
  pWaitFor(() => psB.getPeers().length === 1)
@@ -209,23 +153,20 @@ export default (common) => {
209
153
  const topic = 'test-topic';
210
154
  const data = uint8ArrayFromString('hey!');
211
155
  await start(psA, psB);
212
- await connectPeers(psA.multicodecs[0], {
213
- peerId: peerA,
214
- registrar: registrarA
215
- }, {
216
- peerId: peerB,
217
- registrar: registrarB
218
- });
156
+ await connectPeers(psA.multicodecs[0], componentsA, componentsB);
219
157
  await Promise.all([
220
158
  pWaitFor(() => psA.getPeers().length === 1),
221
159
  pWaitFor(() => psB.getPeers().length === 1)
222
160
  ]);
223
161
  let subscribedTopics = psA.getTopics();
224
162
  expect(subscribedTopics).to.not.include(topic);
225
- psA.addEventListener(topic, (evt) => {
226
- const msg = evt.detail;
227
- expect(msg.data).to.equalBytes(data);
228
- defer.resolve();
163
+ psA.subscribe(topic);
164
+ psA.addEventListener('message', (evt) => {
165
+ if (evt.detail.topic === topic) {
166
+ const msg = evt.detail;
167
+ expect(msg.data).to.equalBytes(data);
168
+ defer.resolve();
169
+ }
229
170
  });
230
171
  psA.subscribe(topic);
231
172
  subscribedTopics = psA.getTopics();
@@ -233,37 +174,27 @@ export default (common) => {
233
174
  // wait for psB to know about psA subscription
234
175
  await pWaitFor(() => {
235
176
  const subscribedPeers = psB.getSubscribers(topic);
236
- return subscribedPeers.map(p => p.toString()).includes(peerA.toString());
177
+ return subscribedPeers.map(p => p.toString()).includes(componentsA.getPeerId().toString()); // eslint-disable-line max-nested-callbacks
237
178
  });
238
- void psB.dispatchEvent(new CustomEvent(topic, { detail: data }));
179
+ await psB.publish(topic, data);
239
180
  await defer.promise;
240
181
  });
241
182
  });
242
183
  describe('pubsub with intermittent connections', () => {
243
184
  let psA;
244
185
  let psB;
245
- let peerA;
246
- let peerB;
247
- let registrarA;
248
- let registrarB;
186
+ let componentsA;
187
+ let componentsB;
249
188
  // Create pubsub nodes and start them
250
189
  beforeEach(async () => {
251
- peerA = await createEd25519PeerId();
252
- peerB = await createEd25519PeerId();
253
- registrarA = mockRegistrar();
254
- registrarB = mockRegistrar();
190
+ componentsA = await createComponents();
191
+ componentsB = await createComponents();
255
192
  psA = await common.setup({
256
- components: new Components({
257
- peerId: peerA,
258
- registrar: registrarA
259
- }),
193
+ components: componentsA,
260
194
  init: {}
261
195
  });
262
196
  psB = await common.setup({
263
- components: new Components({
264
- peerId: peerB,
265
- registrar: registrarB
266
- }),
197
+ components: componentsB,
267
198
  init: {}
268
199
  });
269
200
  await start(psA, psB);
@@ -279,20 +210,17 @@ export default (common) => {
279
210
  let counter = 0;
280
211
  const defer1 = pDefer();
281
212
  const defer2 = pDefer();
282
- await connectPeers(psA.multicodecs[0], {
283
- peerId: peerA,
284
- registrar: registrarA
285
- }, {
286
- peerId: peerB,
287
- registrar: registrarB
288
- });
213
+ await connectPeers(psA.multicodecs[0], componentsA, componentsB);
289
214
  let subscribedTopics = psA.getTopics();
290
215
  expect(subscribedTopics).to.not.include(topic);
291
- psA.addEventListener(topic, (evt) => {
292
- const msg = evt.detail;
293
- expect(msg.data).to.equalBytes(data);
294
- counter++;
295
- counter === 1 ? defer1.resolve() : defer2.resolve();
216
+ psA.subscribe(topic);
217
+ psA.addEventListener('message', (evt) => {
218
+ if (evt.detail.topic === topic) {
219
+ const msg = evt.detail;
220
+ expect(msg.data).to.equalBytes(data);
221
+ counter++;
222
+ counter === 1 ? defer1.resolve() : defer2.resolve();
223
+ }
296
224
  });
297
225
  psA.subscribe(topic);
298
226
  subscribedTopics = psA.getTopics();
@@ -300,9 +228,9 @@ export default (common) => {
300
228
  // wait for psB to know about psA subscription
301
229
  await pWaitFor(() => {
302
230
  const subscribedPeers = psB.getSubscribers(topic);
303
- return subscribedPeers.map(p => p.toString()).includes(peerA.toString());
231
+ return subscribedPeers.map(p => p.toString()).includes(componentsA.getPeerId().toString()); // eslint-disable-line max-nested-callbacks
304
232
  });
305
- void psB.dispatchEvent(new CustomEvent(topic, { detail: data }));
233
+ await psB.publish(topic, data);
306
234
  await defer1.promise;
307
235
  await psB.stop();
308
236
  // @ts-expect-error protected fields
@@ -317,19 +245,13 @@ export default (common) => {
317
245
  // @ts-expect-error protected fields
318
246
  await psB._libp2p.start();
319
247
  await psB.start();
320
- await connectPeers(psA.multicodecs[0], {
321
- peerId: peerA,
322
- registrar: registrarA
323
- }, {
324
- peerId: peerB,
325
- registrar: registrarB
326
- });
248
+ await connectPeers(psA.multicodecs[0], componentsA, componentsB);
327
249
  // wait for remoteLibp2p to know about libp2p subscription
328
250
  await pWaitFor(() => {
329
251
  const subscribedPeers = psB.getSubscribers(topic);
330
- return subscribedPeers.toString().includes(peerA.toString());
252
+ return subscribedPeers.toString().includes(componentsA.getPeerId().toString());
331
253
  });
332
- void psB.dispatchEvent(new CustomEvent(topic, { detail: data }));
254
+ await psB.publish(topic, data);
333
255
  await defer2.promise;
334
256
  });
335
257
  it.skip('should handle quick reconnects with a delayed disconnect', async () => {
@@ -338,7 +260,11 @@ export default (common) => {
338
260
  let aReceivedSecondMessageFromB = false;
339
261
  let bReceivedFirstMessageFromA = false;
340
262
  let bReceivedSecondMessageFromA = false;
263
+ const topic = 'reconnect-channel';
341
264
  const handlerSpyA = (evt) => {
265
+ if (evt.detail.topic !== topic) {
266
+ return;
267
+ }
342
268
  const message = evt.detail;
343
269
  const data = uint8ArrayToString(message.data);
344
270
  if (data === 'message-from-b-1') {
@@ -349,6 +275,9 @@ export default (common) => {
349
275
  }
350
276
  };
351
277
  const handlerSpyB = (evt) => {
278
+ if (evt.detail.topic !== topic) {
279
+ return;
280
+ }
352
281
  const message = evt.detail;
353
282
  const data = uint8ArrayToString(message.data);
354
283
  if (data === 'message-from-a-1') {
@@ -358,30 +287,23 @@ export default (common) => {
358
287
  bReceivedSecondMessageFromA = true;
359
288
  }
360
289
  };
361
- const topic = 'reconnect-channel';
362
- psA.addEventListener(topic, handlerSpyA);
363
- psB.addEventListener(topic, handlerSpyB);
290
+ psA.addEventListener('message', handlerSpyA);
291
+ psB.addEventListener('message', handlerSpyB);
364
292
  psA.subscribe(topic);
365
293
  psB.subscribe(topic);
366
294
  // Create two connections to the remote peer
367
295
  // @ts-expect-error protected fields
368
296
  const originalConnection = await psA._libp2p.dialer.connectToPeer(psB.peerId);
369
297
  // second connection
370
- await connectPeers(psA.multicodecs[0], {
371
- peerId: peerA,
372
- registrar: registrarA
373
- }, {
374
- peerId: peerB,
375
- registrar: registrarB
376
- });
298
+ await connectPeers(psA.multicodecs[0], componentsA, componentsB);
377
299
  // Wait for subscriptions to occur
378
300
  await pWaitFor(() => {
379
- return psA.getSubscribers(topic).includes(peerB) &&
380
- psB.getSubscribers(topic).map(p => p.toString()).includes(peerA.toString());
301
+ return psA.getSubscribers(topic).map(p => p.toString()).includes(componentsB.getPeerId().toString()) &&
302
+ psB.getSubscribers(topic).map(p => p.toString()).includes(componentsA.getPeerId().toString());
381
303
  });
382
304
  // Verify messages go both ways
383
- void psA.dispatchEvent(new CustomEvent(topic, { detail: uint8ArrayFromString('message-from-a-1') }));
384
- void psB.dispatchEvent(new CustomEvent(topic, { detail: uint8ArrayFromString('message-from-b-1') }));
305
+ await psA.publish(topic, uint8ArrayFromString('message-from-a-1'));
306
+ await psB.publish(topic, uint8ArrayFromString('message-from-b-1'));
385
307
  await pWaitFor(() => {
386
308
  return aReceivedFirstMessageFromB && bReceivedFirstMessageFromA;
387
309
  });
@@ -391,8 +313,8 @@ export default (common) => {
391
313
  await originalConnection.close();
392
314
  await pWaitFor(() => psAConnUpdateSpy.callCount === 1);
393
315
  // Verify messages go both ways after the disconnect
394
- void psA.dispatchEvent(new CustomEvent(topic, { detail: uint8ArrayFromString('message-from-a-2') }));
395
- void psB.dispatchEvent(new CustomEvent(topic, { detail: uint8ArrayFromString('message-from-b-2') }));
316
+ await psA.publish(topic, uint8ArrayFromString('message-from-a-2'));
317
+ await psB.publish(topic, uint8ArrayFromString('message-from-b-2'));
396
318
  await pWaitFor(() => {
397
319
  return aReceivedSecondMessageFromB && bReceivedSecondMessageFromA;
398
320
  });
@@ -1 +1 @@
1
- {"version":3,"file":"connection-handlers.js","sourceRoot":"","sources":["../../../src/pubsub/connection-handlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection-handlers.js","sourceRoot":"","sources":["../../../src/pubsub/connection-handlers.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { TestSetup } from '../index.js';
2
2
  import type { PubSubArgs } from './index.js';
3
- import type { PubSubBaseProtocol } from '@libp2p/pubsub';
4
- declare const _default: (common: TestSetup<PubSubBaseProtocol, PubSubArgs>) => void;
3
+ import type { PubSub } from '@libp2p/interfaces/pubsub';
4
+ declare const _default: (common: TestSetup<PubSub, PubSubArgs>) => void;
5
5
  export default _default;
6
6
  //# sourceMappingURL=emit-self.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"emit-self.d.ts","sourceRoot":"","sources":["../../../src/pubsub/emit-self.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;iCAQhC,UAAU,kBAAkB,EAAE,UAAU,CAAC;AAAjE,wBA2EC"}
1
+ {"version":3,"file":"emit-self.d.ts","sourceRoot":"","sources":["../../../src/pubsub/emit-self.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAG5C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;iCAO/B,UAAU,MAAM,EAAE,UAAU,CAAC;AAArD,wBAmFC"}
@@ -3,22 +3,21 @@ import sinon from 'sinon';
3
3
  import { fromString as uint8ArrayFromString } from 'uint8arrays/from-string';
4
4
  import { createEd25519PeerId } from '@libp2p/peer-id-factory';
5
5
  import { mockRegistrar } from '../mocks/registrar.js';
6
- import { CustomEvent } from '@libp2p/interfaces';
7
6
  import { Components } from '@libp2p/interfaces/components';
8
7
  import { start, stop } from '../index.js';
8
+ import { createComponents } from './utils.js';
9
9
  const topic = 'foo';
10
10
  const data = uint8ArrayFromString('bar');
11
11
  const shouldNotHappen = () => expect.fail();
12
12
  export default (common) => {
13
13
  describe('emit self', () => {
14
14
  let pubsub;
15
+ let components;
15
16
  describe('enabled', () => {
16
17
  before(async () => {
18
+ components = await createComponents();
17
19
  pubsub = await common.setup({
18
- components: new Components({
19
- peerId: await createEd25519PeerId(),
20
- registrar: mockRegistrar()
21
- }),
20
+ components,
22
21
  init: {
23
22
  emitSelf: true
24
23
  }
@@ -34,11 +33,18 @@ export default (common) => {
34
33
  await common.teardown();
35
34
  });
36
35
  it('should emit to self on publish', async () => {
37
- const promise = new Promise((resolve) => pubsub.addEventListener(topic, resolve, {
38
- once: true
39
- }));
40
- void pubsub.dispatchEvent(new CustomEvent(topic, { detail: data }));
41
- return await promise;
36
+ const promise = new Promise((resolve) => {
37
+ pubsub.addEventListener('message', (evt) => {
38
+ if (evt.detail.topic === topic) {
39
+ resolve();
40
+ }
41
+ }, {
42
+ once: true
43
+ });
44
+ });
45
+ const result = await pubsub.publish(topic, data);
46
+ await promise;
47
+ expect(result).to.have.property('recipients').with.lengthOf(1);
42
48
  });
43
49
  });
44
50
  describe('disabled', () => {
@@ -63,10 +69,10 @@ export default (common) => {
63
69
  await common.teardown();
64
70
  });
65
71
  it('should not emit to self on publish', async () => {
66
- pubsub.addEventListener(topic, () => shouldNotHappen, {
72
+ pubsub.addEventListener('message', shouldNotHappen, {
67
73
  once: true
68
74
  });
69
- void pubsub.dispatchEvent(new CustomEvent(topic, { detail: data }));
75
+ await pubsub.publish(topic, data);
70
76
  // Wait 1 second to guarantee that self is not noticed
71
77
  return await new Promise((resolve) => setTimeout(resolve, 1000));
72
78
  });
@@ -1 +1 @@
1
- {"version":3,"file":"emit-self.js","sourceRoot":"","sources":["../../../src/pubsub/emit-self.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"emit-self.js","sourceRoot":"","sources":["../../../src/pubsub/emit-self.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,10 @@
1
1
  import type { TestSetup } from '../index.js';
2
- import type { PubSubInit } from '@libp2p/interfaces/pubsub';
3
- import type { PubSubBaseProtocol } from '@libp2p/pubsub';
2
+ import type { PubSub, PubSubInit } from '@libp2p/interfaces/pubsub';
4
3
  import type { Components } from '@libp2p/interfaces/components';
5
4
  export interface PubSubArgs {
6
5
  components: Components;
7
6
  init: PubSubInit;
8
7
  }
9
- declare const _default: (common: TestSetup<PubSubBaseProtocol, PubSubArgs>) => void;
8
+ declare const _default: (common: TestSetup<PubSub, PubSubArgs>) => void;
10
9
  export default _default;
11
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/pubsub/index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAE/D,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,UAAU,CAAA;IACtB,IAAI,EAAE,UAAU,CAAA;CACjB;iCAEuB,UAAU,kBAAkB,EAAE,UAAU,CAAC;AAAjE,wBASC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/pubsub/index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AACnE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAE/D,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,UAAU,CAAA;IACtB,IAAI,EAAE,UAAU,CAAA;CACjB;iCAEuB,UAAU,MAAM,EAAE,UAAU,CAAC;AAArD,wBASC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/pubsub/index.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,UAAU,CAAA;AAC9B,OAAO,YAAY,MAAM,gBAAgB,CAAA;AACzC,OAAO,YAAY,MAAM,eAAe,CAAA;AACxC,OAAO,sBAAsB,MAAM,0BAA0B,CAAA;AAC7D,OAAO,YAAY,MAAM,gBAAgB,CAAA;AACzC,OAAO,iBAAiB,MAAM,qBAAqB,CAAA;AAWnD,eAAe,CAAC,MAAiD,EAAE,EAAE;IACnE,QAAQ,CAAC,mCAAmC,EAAE,GAAG,EAAE;QACjD,OAAO,CAAC,MAAM,CAAC,CAAA;QACf,YAAY,CAAC,MAAM,CAAC,CAAA;QACpB,YAAY,CAAC,MAAM,CAAC,CAAA;QACpB,sBAAsB,CAAC,MAAM,CAAC,CAAA;QAC9B,YAAY,CAAC,MAAM,CAAC,CAAA;QACpB,iBAAiB,CAAC,MAAM,CAAC,CAAA;IAC3B,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/pubsub/index.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,UAAU,CAAA;AAC9B,OAAO,YAAY,MAAM,gBAAgB,CAAA;AACzC,OAAO,YAAY,MAAM,eAAe,CAAA;AACxC,OAAO,sBAAsB,MAAM,0BAA0B,CAAA;AAC7D,OAAO,YAAY,MAAM,gBAAgB,CAAA;AACzC,OAAO,iBAAiB,MAAM,qBAAqB,CAAA;AAUnD,eAAe,CAAC,MAAqC,EAAE,EAAE;IACvD,QAAQ,CAAC,mCAAmC,EAAE,GAAG,EAAE;QACjD,OAAO,CAAC,MAAM,CAAC,CAAA;QACf,YAAY,CAAC,MAAM,CAAC,CAAA;QACpB,YAAY,CAAC,MAAM,CAAC,CAAA;QACpB,sBAAsB,CAAC,MAAM,CAAC,CAAA;QAC9B,YAAY,CAAC,MAAM,CAAC,CAAA;QACpB,iBAAiB,CAAC,MAAM,CAAC,CAAA;IAC3B,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import type { TestSetup } from '../index.js';
2
+ import type { PubSub } from '@libp2p/interfaces/pubsub';
2
3
  import type { PubSubArgs } from './index.js';
3
- import type { PubSubBaseProtocol } from '@libp2p/pubsub';
4
- declare const _default: (common: TestSetup<PubSubBaseProtocol, PubSubArgs>) => void;
4
+ declare const _default: (common: TestSetup<PubSub, PubSubArgs>) => void;
5
5
  export default _default;
6
6
  //# sourceMappingURL=messages.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../src/pubsub/messages.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAE5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;iCAQhC,UAAU,kBAAkB,EAAE,UAAU,CAAC;AAAjE,wBAiHC"}
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../src/pubsub/messages.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,KAAK,EAAW,MAAM,EAAE,MAAM,2BAA2B,CAAA;AAChE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;iCASpB,UAAU,MAAM,EAAE,UAAU,CAAC;AAArD,wBAwCC"}