@libp2p/interface-compliance-tests 1.1.24 → 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 (45) 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.map +1 -1
  14. package/dist/src/pubsub/api.js +10 -15
  15. package/dist/src/pubsub/api.js.map +1 -1
  16. package/dist/src/pubsub/connection-handlers.d.ts.map +1 -1
  17. package/dist/src/pubsub/connection-handlers.js +53 -145
  18. package/dist/src/pubsub/connection-handlers.js.map +1 -1
  19. package/dist/src/pubsub/emit-self.d.ts.map +1 -1
  20. package/dist/src/pubsub/emit-self.js +8 -7
  21. package/dist/src/pubsub/emit-self.js.map +1 -1
  22. package/dist/src/pubsub/messages.d.ts.map +1 -1
  23. package/dist/src/pubsub/messages.js +9 -12
  24. package/dist/src/pubsub/messages.js.map +1 -1
  25. package/dist/src/pubsub/multiple-nodes.d.ts.map +1 -1
  26. package/dist/src/pubsub/multiple-nodes.js +80 -216
  27. package/dist/src/pubsub/multiple-nodes.js.map +1 -1
  28. package/dist/src/pubsub/two-nodes.d.ts.map +1 -1
  29. package/dist/src/pubsub/two-nodes.js +20 -38
  30. package/dist/src/pubsub/two-nodes.js.map +1 -1
  31. package/dist/src/pubsub/utils.d.ts +2 -0
  32. package/dist/src/pubsub/utils.d.ts.map +1 -1
  33. package/dist/src/pubsub/utils.js +10 -0
  34. package/dist/src/pubsub/utils.js.map +1 -1
  35. package/package.json +1 -1
  36. package/src/mocks/connection-manager.ts +4 -20
  37. package/src/mocks/connection.ts +5 -5
  38. package/src/mocks/registrar.ts +6 -10
  39. package/src/pubsub/api.ts +11 -16
  40. package/src/pubsub/connection-handlers.ts +54 -151
  41. package/src/pubsub/emit-self.ts +10 -7
  42. package/src/pubsub/messages.ts +11 -13
  43. package/src/pubsub/multiple-nodes.ts +88 -220
  44. package/src/pubsub/two-nodes.ts +23 -41
  45. package/src/pubsub/utils.ts +11 -0
@@ -4,37 +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 { Components } from '@libp2p/interfaces/components';
7
+ import { connectPeers } from '../mocks/registrar.js';
10
8
  import { start, stop } from '../index.js';
9
+ import { createComponents } from './utils.js';
10
+ import { pEvent } from 'p-event';
11
11
  export default (common) => {
12
12
  describe('pubsub connection handlers', () => {
13
13
  let psA;
14
14
  let psB;
15
- let peerA;
16
- let peerB;
17
- let registrarA;
18
- let registrarB;
15
+ let componentsA;
16
+ let componentsB;
19
17
  describe('nodes send state on connection', () => {
20
18
  // Create pubsub nodes and connect them
21
19
  before(async () => {
22
- peerA = await createEd25519PeerId();
23
- peerB = await createEd25519PeerId();
24
- registrarA = mockRegistrar();
25
- registrarB = mockRegistrar();
20
+ componentsA = await createComponents();
21
+ componentsB = await createComponents();
26
22
  psA = await common.setup({
27
- components: new Components({
28
- peerId: peerA,
29
- registrar: registrarA
30
- }),
23
+ components: componentsA,
31
24
  init: {}
32
25
  });
33
26
  psB = await common.setup({
34
- components: new Components({
35
- peerId: peerB,
36
- registrar: registrarB
37
- }),
27
+ components: componentsB,
38
28
  init: {}
39
29
  });
40
30
  // Start pubsub
@@ -57,54 +47,34 @@ export default (common) => {
57
47
  });
58
48
  it('existing subscriptions are sent upon peer connection', async function () {
59
49
  const subscriptionsChanged = Promise.all([
60
- new Promise((resolve) => psA.addEventListener('subscription-change', resolve, {
61
- once: true
62
- })),
63
- new Promise((resolve) => psB.addEventListener('subscription-change', resolve, {
64
- once: true
65
- }))
50
+ pEvent(psA, 'subscription-change'),
51
+ pEvent(psB, 'subscription-change')
66
52
  ]);
67
- await connectPeers(psA.multicodecs[0], {
68
- peerId: peerA,
69
- registrar: registrarA
70
- }, {
71
- peerId: peerB,
72
- registrar: registrarB
73
- });
53
+ await connectPeers(psA.multicodecs[0], componentsA, componentsB);
74
54
  await subscriptionsChanged;
75
55
  expect(psA.getPeers()).to.have.lengthOf(1);
76
56
  expect(psB.getPeers()).to.have.lengthOf(1);
77
57
  expect(psA.getTopics()).to.deep.equal(['Za']);
78
58
  expect(psB.getTopics()).to.deep.equal(['Zb']);
79
- expect(psA.getSubscribers('Zb').map(p => p.toString())).to.deep.equal([peerB.toString()]);
80
- 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()]);
81
61
  });
82
62
  });
83
63
  describe('pubsub started before connect', () => {
84
64
  let psA;
85
65
  let psB;
86
- let peerA;
87
- let peerB;
88
- let registrarA;
89
- let registrarB;
66
+ let componentsA;
67
+ let componentsB;
90
68
  // Create pubsub nodes and start them
91
69
  beforeEach(async () => {
92
- peerA = await createEd25519PeerId();
93
- peerB = await createEd25519PeerId();
94
- registrarA = mockRegistrar();
95
- registrarB = mockRegistrar();
70
+ componentsA = await createComponents();
71
+ componentsB = await createComponents();
96
72
  psA = await common.setup({
97
- components: new Components({
98
- peerId: peerA,
99
- registrar: registrarA
100
- }),
73
+ components: componentsA,
101
74
  init: {}
102
75
  });
103
76
  psB = await common.setup({
104
- components: new Components({
105
- peerId: peerB,
106
- registrar: registrarB
107
- }),
77
+ components: componentsB,
108
78
  init: {}
109
79
  });
110
80
  await start(psA, psB);
@@ -114,13 +84,7 @@ export default (common) => {
114
84
  await common.teardown();
115
85
  });
116
86
  it('should get notified of connected peers on dial', async () => {
117
- await connectPeers(psA.multicodecs[0], {
118
- peerId: peerA,
119
- registrar: registrarA
120
- }, {
121
- peerId: peerB,
122
- registrar: registrarB
123
- });
87
+ await connectPeers(psA.multicodecs[0], componentsA, componentsB);
124
88
  return await Promise.all([
125
89
  pWaitFor(() => psA.getPeers().length === 1),
126
90
  pWaitFor(() => psB.getPeers().length === 1)
@@ -130,13 +94,7 @@ export default (common) => {
130
94
  const defer = pDefer();
131
95
  const topic = 'test-topic';
132
96
  const data = uint8ArrayFromString('hey!');
133
- await connectPeers(psA.multicodecs[0], {
134
- peerId: peerA,
135
- registrar: registrarA
136
- }, {
137
- peerId: peerB,
138
- registrar: registrarB
139
- });
97
+ await connectPeers(psA.multicodecs[0], componentsA, componentsB);
140
98
  let subscribedTopics = psA.getTopics();
141
99
  expect(subscribedTopics).to.not.include(topic);
142
100
  psA.subscribe(topic);
@@ -153,37 +111,27 @@ export default (common) => {
153
111
  // wait for psB to know about psA subscription
154
112
  await pWaitFor(() => {
155
113
  const subscribedPeers = psB.getSubscribers(topic);
156
- 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
157
115
  });
158
- psB.publish(topic, data);
116
+ await psB.publish(topic, data);
159
117
  await defer.promise;
160
118
  });
161
119
  });
162
120
  describe('pubsub started after connect', () => {
163
121
  let psA;
164
122
  let psB;
165
- let peerA;
166
- let peerB;
167
- let registrarA;
168
- let registrarB;
123
+ let componentsA;
124
+ let componentsB;
169
125
  // Create pubsub nodes
170
126
  beforeEach(async () => {
171
- peerA = await createEd25519PeerId();
172
- peerB = await createEd25519PeerId();
173
- registrarA = mockRegistrar();
174
- registrarB = mockRegistrar();
127
+ componentsA = await createComponents();
128
+ componentsB = await createComponents();
175
129
  psA = await common.setup({
176
- components: new Components({
177
- peerId: peerA,
178
- registrar: registrarA
179
- }),
130
+ components: componentsA,
180
131
  init: {}
181
132
  });
182
133
  psB = await common.setup({
183
- components: new Components({
184
- peerId: peerB,
185
- registrar: registrarB
186
- }),
134
+ components: componentsB,
187
135
  init: {}
188
136
  });
189
137
  });
@@ -194,13 +142,7 @@ export default (common) => {
194
142
  });
195
143
  it('should get notified of connected peers after starting', async () => {
196
144
  await start(psA, psB);
197
- await connectPeers(psA.multicodecs[0], {
198
- peerId: peerA,
199
- registrar: registrarA
200
- }, {
201
- peerId: peerB,
202
- registrar: registrarB
203
- });
145
+ await connectPeers(psA.multicodecs[0], componentsA, componentsB);
204
146
  return await Promise.all([
205
147
  pWaitFor(() => psA.getPeers().length === 1),
206
148
  pWaitFor(() => psB.getPeers().length === 1)
@@ -211,13 +153,7 @@ export default (common) => {
211
153
  const topic = 'test-topic';
212
154
  const data = uint8ArrayFromString('hey!');
213
155
  await start(psA, psB);
214
- await connectPeers(psA.multicodecs[0], {
215
- peerId: peerA,
216
- registrar: registrarA
217
- }, {
218
- peerId: peerB,
219
- registrar: registrarB
220
- });
156
+ await connectPeers(psA.multicodecs[0], componentsA, componentsB);
221
157
  await Promise.all([
222
158
  pWaitFor(() => psA.getPeers().length === 1),
223
159
  pWaitFor(() => psB.getPeers().length === 1)
@@ -238,37 +174,27 @@ export default (common) => {
238
174
  // wait for psB to know about psA subscription
239
175
  await pWaitFor(() => {
240
176
  const subscribedPeers = psB.getSubscribers(topic);
241
- 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
242
178
  });
243
- psB.publish(topic, data);
179
+ await psB.publish(topic, data);
244
180
  await defer.promise;
245
181
  });
246
182
  });
247
183
  describe('pubsub with intermittent connections', () => {
248
184
  let psA;
249
185
  let psB;
250
- let peerA;
251
- let peerB;
252
- let registrarA;
253
- let registrarB;
186
+ let componentsA;
187
+ let componentsB;
254
188
  // Create pubsub nodes and start them
255
189
  beforeEach(async () => {
256
- peerA = await createEd25519PeerId();
257
- peerB = await createEd25519PeerId();
258
- registrarA = mockRegistrar();
259
- registrarB = mockRegistrar();
190
+ componentsA = await createComponents();
191
+ componentsB = await createComponents();
260
192
  psA = await common.setup({
261
- components: new Components({
262
- peerId: peerA,
263
- registrar: registrarA
264
- }),
193
+ components: componentsA,
265
194
  init: {}
266
195
  });
267
196
  psB = await common.setup({
268
- components: new Components({
269
- peerId: peerB,
270
- registrar: registrarB
271
- }),
197
+ components: componentsB,
272
198
  init: {}
273
199
  });
274
200
  await start(psA, psB);
@@ -284,13 +210,7 @@ export default (common) => {
284
210
  let counter = 0;
285
211
  const defer1 = pDefer();
286
212
  const defer2 = pDefer();
287
- await connectPeers(psA.multicodecs[0], {
288
- peerId: peerA,
289
- registrar: registrarA
290
- }, {
291
- peerId: peerB,
292
- registrar: registrarB
293
- });
213
+ await connectPeers(psA.multicodecs[0], componentsA, componentsB);
294
214
  let subscribedTopics = psA.getTopics();
295
215
  expect(subscribedTopics).to.not.include(topic);
296
216
  psA.subscribe(topic);
@@ -308,9 +228,9 @@ export default (common) => {
308
228
  // wait for psB to know about psA subscription
309
229
  await pWaitFor(() => {
310
230
  const subscribedPeers = psB.getSubscribers(topic);
311
- 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
312
232
  });
313
- psB.publish(topic, data);
233
+ await psB.publish(topic, data);
314
234
  await defer1.promise;
315
235
  await psB.stop();
316
236
  // @ts-expect-error protected fields
@@ -325,19 +245,13 @@ export default (common) => {
325
245
  // @ts-expect-error protected fields
326
246
  await psB._libp2p.start();
327
247
  await psB.start();
328
- await connectPeers(psA.multicodecs[0], {
329
- peerId: peerA,
330
- registrar: registrarA
331
- }, {
332
- peerId: peerB,
333
- registrar: registrarB
334
- });
248
+ await connectPeers(psA.multicodecs[0], componentsA, componentsB);
335
249
  // wait for remoteLibp2p to know about libp2p subscription
336
250
  await pWaitFor(() => {
337
251
  const subscribedPeers = psB.getSubscribers(topic);
338
- return subscribedPeers.toString().includes(peerA.toString());
252
+ return subscribedPeers.toString().includes(componentsA.getPeerId().toString());
339
253
  });
340
- psB.publish(topic, data);
254
+ await psB.publish(topic, data);
341
255
  await defer2.promise;
342
256
  });
343
257
  it.skip('should handle quick reconnects with a delayed disconnect', async () => {
@@ -381,21 +295,15 @@ export default (common) => {
381
295
  // @ts-expect-error protected fields
382
296
  const originalConnection = await psA._libp2p.dialer.connectToPeer(psB.peerId);
383
297
  // second connection
384
- await connectPeers(psA.multicodecs[0], {
385
- peerId: peerA,
386
- registrar: registrarA
387
- }, {
388
- peerId: peerB,
389
- registrar: registrarB
390
- });
298
+ await connectPeers(psA.multicodecs[0], componentsA, componentsB);
391
299
  // Wait for subscriptions to occur
392
300
  await pWaitFor(() => {
393
- return psA.getSubscribers(topic).includes(peerB) &&
394
- 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());
395
303
  });
396
304
  // Verify messages go both ways
397
- psA.publish(topic, uint8ArrayFromString('message-from-a-1'));
398
- psB.publish(topic, 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'));
399
307
  await pWaitFor(() => {
400
308
  return aReceivedFirstMessageFromB && bReceivedFirstMessageFromA;
401
309
  });
@@ -405,8 +313,8 @@ export default (common) => {
405
313
  await originalConnection.close();
406
314
  await pWaitFor(() => psAConnUpdateSpy.callCount === 1);
407
315
  // Verify messages go both ways after the disconnect
408
- psA.publish(topic, uint8ArrayFromString('message-from-a-2'));
409
- psB.publish(topic, 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'));
410
318
  await pWaitFor(() => {
411
319
  return aReceivedSecondMessageFromB && bReceivedSecondMessageFromA;
412
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 +1 @@
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;iCAM/B,UAAU,MAAM,EAAE,UAAU,CAAC;AAArD,wBAiFC"}
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"}
@@ -5,19 +5,19 @@ import { createEd25519PeerId } from '@libp2p/peer-id-factory';
5
5
  import { mockRegistrar } from '../mocks/registrar.js';
6
6
  import { Components } from '@libp2p/interfaces/components';
7
7
  import { start, stop } from '../index.js';
8
+ import { createComponents } from './utils.js';
8
9
  const topic = 'foo';
9
10
  const data = uint8ArrayFromString('bar');
10
11
  const shouldNotHappen = () => expect.fail();
11
12
  export default (common) => {
12
13
  describe('emit self', () => {
13
14
  let pubsub;
15
+ let components;
14
16
  describe('enabled', () => {
15
17
  before(async () => {
18
+ components = await createComponents();
16
19
  pubsub = await common.setup({
17
- components: new Components({
18
- peerId: await createEd25519PeerId(),
19
- registrar: mockRegistrar()
20
- }),
20
+ components,
21
21
  init: {
22
22
  emitSelf: true
23
23
  }
@@ -42,8 +42,9 @@ export default (common) => {
42
42
  once: true
43
43
  });
44
44
  });
45
- pubsub.publish(topic, data);
46
- return await promise;
45
+ const result = await pubsub.publish(topic, data);
46
+ await promise;
47
+ expect(result).to.have.property('recipients').with.lengthOf(1);
47
48
  });
48
49
  });
49
50
  describe('disabled', () => {
@@ -71,7 +72,7 @@ export default (common) => {
71
72
  pubsub.addEventListener('message', shouldNotHappen, {
72
73
  once: true
73
74
  });
74
- pubsub.publish(topic, data);
75
+ await pubsub.publish(topic, data);
75
76
  // Wait 1 second to guarantee that self is not noticed
76
77
  return await new Promise((resolve) => setTimeout(resolve, 1000));
77
78
  });
@@ -1 +1 @@
1
- {"version":3,"file":"emit-self.js","sourceRoot":"","sources":["../../../src/pubsub/emit-self.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,UAAU,IAAI,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAGrD,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAC1D,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAGzC,MAAM,KAAK,GAAG,KAAK,CAAA;AACnB,MAAM,IAAI,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAA;AACxC,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAA;AAE3C,eAAe,CAAC,MAAqC,EAAE,EAAE;IACvD,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;QACzB,IAAI,MAAc,CAAA;QAElB,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;YACvB,MAAM,CAAC,KAAK,IAAI,EAAE;gBAChB,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;oBAC1B,UAAU,EAAE,IAAI,UAAU,CAAC;wBACzB,MAAM,EAAE,MAAM,mBAAmB,EAAE;wBACnC,SAAS,EAAE,aAAa,EAAE;qBAC3B,CAAC;oBACF,IAAI,EAAE;wBACJ,QAAQ,EAAE,IAAI;qBACf;iBACF,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;YAEF,MAAM,CAAC,KAAK,IAAI,EAAE;gBAChB,MAAM,KAAK,CAAC,MAAM,CAAC,CAAA;gBACnB,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;YACzB,CAAC,CAAC,CAAA;YAEF,KAAK,CAAC,KAAK,IAAI,EAAE;gBACf,KAAK,CAAC,OAAO,EAAE,CAAA;gBACf,MAAM,IAAI,CAAC,MAAM,CAAC,CAAA;gBAClB,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAA;YACzB,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;gBAC9C,MAAM,OAAO,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;oBAC5C,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;wBACzC,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,KAAK,EAAE;4BAC9B,OAAO,EAAE,CAAA;yBACV;oBACH,CAAC,EAAE;wBACD,IAAI,EAAE,IAAI;qBACX,CAAC,CAAA;gBACJ,CAAC,CAAC,CAAA;gBAEF,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;gBAE3B,OAAO,MAAM,OAAO,CAAA;YACtB,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;YACxB,MAAM,CAAC,KAAK,IAAI,EAAE;gBAChB,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;oBAC1B,UAAU,EAAE,IAAI,UAAU,CAAC;wBACzB,MAAM,EAAE,MAAM,mBAAmB,EAAE;wBACnC,SAAS,EAAE,aAAa,EAAE;qBAC3B,CAAC;oBACF,IAAI,EAAE;wBACJ,QAAQ,EAAE,KAAK;qBAChB;iBACF,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;YAEF,MAAM,CAAC,KAAK,IAAI,EAAE;gBAChB,MAAM,KAAK,CAAC,MAAM,CAAC,CAAA;gBACnB,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;YACzB,CAAC,CAAC,CAAA;YAEF,KAAK,CAAC,KAAK,IAAI,EAAE;gBACf,KAAK,CAAC,OAAO,EAAE,CAAA;gBACf,MAAM,IAAI,CAAC,MAAM,CAAC,CAAA;gBAClB,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAA;YACzB,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;gBAClD,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,eAAe,EAAE;oBAClD,IAAI,EAAE,IAAI;iBACX,CAAC,CAAA;gBAEF,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;gBAE3B,sDAAsD;gBACtD,OAAO,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAA;YAClE,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
1
+ {"version":3,"file":"emit-self.js","sourceRoot":"","sources":["../../../src/pubsub/emit-self.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../src/pubsub/messages.ts"],"names":[],"mappings":"AAKA,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"}
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"}
@@ -1,25 +1,20 @@
1
1
  import { expect } from 'aegir/chai';
2
2
  import sinon from 'sinon';
3
- import { createEd25519PeerId } from '@libp2p/peer-id-factory';
4
3
  import { fromString as uint8ArrayFromString } from 'uint8arrays/from-string';
5
- import { mockRegistrar } from '../mocks/registrar.js';
6
- import { Components } from '@libp2p/interfaces/components';
7
4
  import { start, stop } from '../index.js';
8
5
  import { pEvent } from 'p-event';
6
+ import { createComponents } from './utils.js';
9
7
  const topic = 'foo';
10
8
  const data = uint8ArrayFromString('bar');
11
9
  export default (common) => {
12
10
  describe('messages', () => {
13
- let peerId;
14
11
  let pubsub;
12
+ let components;
15
13
  // Create pubsub router
16
14
  beforeEach(async () => {
17
- peerId = await createEd25519PeerId();
15
+ components = await createComponents();
18
16
  pubsub = await common.setup({
19
- components: new Components({
20
- peerId,
21
- registrar: mockRegistrar()
22
- }),
17
+ components,
23
18
  init: {
24
19
  emitSelf: true
25
20
  }
@@ -32,11 +27,13 @@ export default (common) => {
32
27
  await common.teardown();
33
28
  });
34
29
  it('should emit normalized signed messages on publish', async () => {
30
+ const eventPromise = pEvent(pubsub, 'message');
35
31
  pubsub.globalSignaturePolicy = 'StrictSign';
36
- pubsub.publish(topic, data);
37
- const event = await pEvent(pubsub, 'message');
32
+ pubsub.subscribe(topic);
33
+ await pubsub.publish(topic, data);
34
+ const event = await eventPromise;
38
35
  const message = event.detail;
39
- expect(message.from.toString()).to.equal(peerId.toString());
36
+ expect(message.from.toString()).to.equal(components.getPeerId().toString());
40
37
  expect(message.sequenceNumber).to.not.eql(undefined);
41
38
  expect(message.key).to.not.eql(undefined);
42
39
  expect(message.signature).to.not.eql(undefined);
@@ -1 +1 @@
1
- {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../src/pubsub/messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,EAAE,UAAU,IAAI,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAIrD,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAE1D,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAEhC,MAAM,KAAK,GAAG,KAAK,CAAA;AACnB,MAAM,IAAI,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAA;AAExC,eAAe,CAAC,MAAqC,EAAE,EAAE;IACvD,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;QACxB,IAAI,MAAc,CAAA;QAClB,IAAI,MAAc,CAAA;QAElB,uBAAuB;QACvB,UAAU,CAAC,KAAK,IAAI,EAAE;YACpB,MAAM,GAAG,MAAM,mBAAmB,EAAE,CAAA;YAEpC,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;gBAC1B,UAAU,EAAE,IAAI,UAAU,CAAC;oBACzB,MAAM;oBACN,SAAS,EAAE,aAAa,EAAE;iBAC3B,CAAC;gBACF,IAAI,EAAE;oBACJ,QAAQ,EAAE,IAAI;iBACf;aACF,CAAC,CAAA;YACF,MAAM,KAAK,CAAC,MAAM,CAAC,CAAA;QACrB,CAAC,CAAC,CAAA;QAEF,SAAS,CAAC,KAAK,IAAI,EAAE;YACnB,KAAK,CAAC,OAAO,EAAE,CAAA;YACf,MAAM,IAAI,CAAC,MAAM,CAAC,CAAA;YAClB,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAA;QACzB,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;YACjE,MAAM,CAAC,qBAAqB,GAAG,YAAY,CAAA;YAC3C,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;YAE3B,MAAM,KAAK,GAAG,MAAM,MAAM,CAAkC,MAAM,EAAE,SAAS,CAAC,CAAA;YAC9E,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAA;YAE5B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAA;YAC3D,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;YACpD,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;YACzC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QACjD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
1
+ {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../src/pubsub/messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,UAAU,IAAI,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAK5E,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChC,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAE7C,MAAM,KAAK,GAAG,KAAK,CAAA;AACnB,MAAM,IAAI,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAA;AAExC,eAAe,CAAC,MAAqC,EAAE,EAAE;IACvD,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;QACxB,IAAI,MAAc,CAAA;QAClB,IAAI,UAAsB,CAAA;QAE1B,uBAAuB;QACvB,UAAU,CAAC,KAAK,IAAI,EAAE;YACpB,UAAU,GAAG,MAAM,gBAAgB,EAAE,CAAA;YAErC,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;gBAC1B,UAAU;gBACV,IAAI,EAAE;oBACJ,QAAQ,EAAE,IAAI;iBACf;aACF,CAAC,CAAA;YACF,MAAM,KAAK,CAAC,MAAM,CAAC,CAAA;QACrB,CAAC,CAAC,CAAA;QAEF,SAAS,CAAC,KAAK,IAAI,EAAE;YACnB,KAAK,CAAC,OAAO,EAAE,CAAA;YACf,MAAM,IAAI,CAAC,MAAM,CAAC,CAAA;YAClB,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAA;QACzB,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;YACjE,MAAM,YAAY,GAAG,MAAM,CAAkC,MAAM,EAAE,SAAS,CAAC,CAAA;YAE/E,MAAM,CAAC,qBAAqB,GAAG,YAAY,CAAA;YAC3C,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;YACvB,MAAM,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;YAEjC,MAAM,KAAK,GAAG,MAAM,YAAY,CAAA;YAChC,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAA;YAE5B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAA;YAC3E,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;YACpD,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;YACzC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QACjD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"multiple-nodes.d.ts","sourceRoot":"","sources":["../../../src/pubsub/multiple-nodes.ts"],"names":[],"mappings":"AAUA,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;iCAMpB,UAAU,MAAM,EAAE,UAAU,CAAC;AAArD,wBAohBC"}
1
+ {"version":3,"file":"multiple-nodes.d.ts","sourceRoot":"","sources":["../../../src/pubsub/multiple-nodes.ts"],"names":[],"mappings":"AASA,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;iCAIpB,UAAU,MAAM,EAAE,UAAU,CAAC;AAArD,wBAmZC"}