@libp2p/interface-compliance-tests 4.1.4 → 4.1.5-0b4a2ee79
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/src/connection-encryption/utils/index.d.ts.map +1 -1
- package/dist/src/connection-encryption/utils/index.js +3 -1
- package/dist/src/connection-encryption/utils/index.js.map +1 -1
- package/dist/src/mocks/connection-manager.d.ts +2 -1
- package/dist/src/mocks/connection-manager.d.ts.map +1 -1
- package/dist/src/mocks/connection-manager.js.map +1 -1
- package/dist/src/mocks/connection.d.ts +2 -0
- package/dist/src/mocks/connection.d.ts.map +1 -1
- package/dist/src/mocks/connection.js +56 -12
- package/dist/src/mocks/connection.js.map +1 -1
- package/dist/src/mocks/index.d.ts +0 -1
- package/dist/src/mocks/index.d.ts.map +1 -1
- package/dist/src/mocks/index.js +0 -1
- package/dist/src/mocks/index.js.map +1 -1
- package/dist/src/mocks/multiaddr-connection.d.ts.map +1 -1
- package/dist/src/mocks/multiaddr-connection.js +6 -2
- package/dist/src/mocks/multiaddr-connection.js.map +1 -1
- package/dist/src/mocks/muxer.d.ts +1 -1
- package/dist/src/mocks/muxer.d.ts.map +1 -1
- package/dist/src/mocks/muxer.js +17 -5
- package/dist/src/mocks/muxer.js.map +1 -1
- package/dist/src/mocks/peer-discovery.d.ts.map +1 -1
- package/dist/src/mocks/peer-discovery.js +1 -2
- package/dist/src/mocks/peer-discovery.js.map +1 -1
- package/dist/src/pubsub/api.d.ts.map +1 -1
- package/dist/src/pubsub/api.js +0 -2
- package/dist/src/pubsub/api.js.map +1 -1
- package/dist/src/pubsub/index.d.ts +2 -0
- package/dist/src/pubsub/index.d.ts.map +1 -1
- package/dist/src/pubsub/index.js.map +1 -1
- package/dist/src/pubsub/two-nodes.js +3 -3
- package/dist/src/pubsub/two-nodes.js.map +1 -1
- package/dist/src/pubsub/utils.d.ts.map +1 -1
- package/dist/src/pubsub/utils.js +3 -1
- package/dist/src/pubsub/utils.js.map +1 -1
- package/dist/src/stream-muxer/close-test.d.ts.map +1 -1
- package/dist/src/stream-muxer/close-test.js +42 -11
- package/dist/src/stream-muxer/close-test.js.map +1 -1
- package/package.json +15 -15
- package/src/connection-encryption/utils/index.ts +3 -1
- package/src/mocks/connection-manager.ts +2 -1
- package/src/mocks/connection.ts +64 -14
- package/src/mocks/index.ts +0 -1
- package/src/mocks/multiaddr-connection.ts +6 -2
- package/src/mocks/muxer.ts +20 -7
- package/src/mocks/peer-discovery.ts +1 -2
- package/src/pubsub/api.ts +0 -2
- package/src/pubsub/index.ts +2 -0
- package/src/pubsub/two-nodes.ts +3 -3
- package/src/pubsub/utils.ts +3 -1
- package/src/stream-muxer/close-test.ts +47 -9
- package/dist/src/mocks/connection-encrypter.d.ts +0 -3
- package/dist/src/mocks/connection-encrypter.d.ts.map +0 -1
- package/dist/src/mocks/connection-encrypter.js +0 -98
- package/dist/src/mocks/connection-encrypter.js.map +0 -1
- package/dist/typedoc-urls.json +0 -39
- package/src/mocks/connection-encrypter.ts +0 -113
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"two-nodes.js","sourceRoot":"","sources":["../../../src/pubsub/two-nodes.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"two-nodes.js","sourceRoot":"","sources":["../../../src/pubsub/two-nodes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/pubsub/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/pubsub/utils.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAA;AAC9D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAA;AACvD,OAAO,KAAK,EAAE,MAAM,EAA0B,MAAM,0BAA0B,CAAA;AAE9E,wBAAsB,yBAAyB,CAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAMpF;AAED,wBAAsB,gBAAgB,IAAK,OAAO,CAAC,qBAAqB,CAAC,CAYxE"}
|
package/dist/src/pubsub/utils.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { TypedEventEmitter } from '@libp2p/interface/events';
|
|
2
|
+
import { defaultLogger } from '@libp2p/logger';
|
|
2
3
|
import { createEd25519PeerId } from '@libp2p/peer-id-factory';
|
|
3
4
|
import { pEvent } from 'p-event';
|
|
4
5
|
import pWaitFor from 'p-wait-for';
|
|
@@ -13,7 +14,8 @@ export async function createComponents() {
|
|
|
13
14
|
const components = {
|
|
14
15
|
peerId: await createEd25519PeerId(),
|
|
15
16
|
registrar: mockRegistrar(),
|
|
16
|
-
events: new TypedEventEmitter()
|
|
17
|
+
events: new TypedEventEmitter(),
|
|
18
|
+
logger: defaultLogger()
|
|
17
19
|
};
|
|
18
20
|
components.connectionManager = mockConnectionManager(components);
|
|
19
21
|
mockNetwork.addNode(components);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/pubsub/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChC,OAAO,QAAQ,MAAM,YAAY,CAAA;AACjC,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAKrF,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAE,CAAS,EAAE,CAAS;IACnE,MAAM,QAAQ,CAAC,KAAK,IAAI,EAAE;QACxB,MAAM,KAAK,GAAG,MAAM,MAAM,CAA6D,CAAC,EAAE,qBAAqB,CAAC,CAAA;QAEhH,OAAO,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IACtC,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACpC,MAAM,UAAU,GAAQ;QACtB,MAAM,EAAE,MAAM,mBAAmB,EAAE;QACnC,SAAS,EAAE,aAAa,EAAE;QAC1B,MAAM,EAAE,IAAI,iBAAiB,EAAE;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/pubsub/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChC,OAAO,QAAQ,MAAM,YAAY,CAAA;AACjC,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAKrF,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAE,CAAS,EAAE,CAAS;IACnE,MAAM,QAAQ,CAAC,KAAK,IAAI,EAAE;QACxB,MAAM,KAAK,GAAG,MAAM,MAAM,CAA6D,CAAC,EAAE,qBAAqB,CAAC,CAAA;QAEhH,OAAO,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IACtC,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACpC,MAAM,UAAU,GAAQ;QACtB,MAAM,EAAE,MAAM,mBAAmB,EAAE;QACnC,SAAS,EAAE,aAAa,EAAE;QAC1B,MAAM,EAAE,IAAI,iBAAiB,EAAE;QAC/B,MAAM,EAAE,aAAa,EAAE;KACxB,CAAA;IACD,UAAU,CAAC,iBAAiB,GAAG,qBAAqB,CAAC,UAAU,CAAC,CAAA;IAEhE,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;IAE/B,OAAO,UAAU,CAAA;AACnB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"close-test.d.ts","sourceRoot":"","sources":["../../../src/stream-muxer/close-test.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAA;
|
|
1
|
+
{"version":3,"file":"close-test.d.ts","sourceRoot":"","sources":["../../../src/stream-muxer/close-test.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAA;iCAqDhD,UAAU,kBAAkB,CAAC,KAAG,IAAI;AAA5D,wBA2ZC"}
|
|
@@ -15,14 +15,45 @@ import { Message } from './fixtures/pb/message.js';
|
|
|
15
15
|
function randomBuffer() {
|
|
16
16
|
return uint8ArrayFromString(Math.random().toString());
|
|
17
17
|
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
18
|
+
function infiniteRandom() {
|
|
19
|
+
let done = false;
|
|
20
|
+
const generator = {
|
|
21
|
+
[Symbol.asyncIterator]: () => {
|
|
22
|
+
return generator;
|
|
23
|
+
},
|
|
24
|
+
async next() {
|
|
25
|
+
await delay(10);
|
|
26
|
+
if (done instanceof Error) {
|
|
27
|
+
throw done;
|
|
28
|
+
}
|
|
29
|
+
if (done) {
|
|
30
|
+
return {
|
|
31
|
+
done: true,
|
|
32
|
+
value: undefined
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
return {
|
|
36
|
+
done: false,
|
|
37
|
+
value: new Uint8ArrayList(randomBuffer())
|
|
38
|
+
};
|
|
39
|
+
},
|
|
40
|
+
async return() {
|
|
41
|
+
done = true;
|
|
42
|
+
return {
|
|
43
|
+
done: true,
|
|
44
|
+
value: undefined
|
|
45
|
+
};
|
|
46
|
+
},
|
|
47
|
+
async throw(err) {
|
|
48
|
+
done = err;
|
|
49
|
+
return {
|
|
50
|
+
done: true,
|
|
51
|
+
value: undefined
|
|
52
|
+
};
|
|
23
53
|
}
|
|
24
|
-
}
|
|
25
|
-
|
|
54
|
+
};
|
|
55
|
+
return generator;
|
|
56
|
+
}
|
|
26
57
|
export default (common) => {
|
|
27
58
|
describe('close', () => {
|
|
28
59
|
it('closing underlying socket closes streams', async () => {
|
|
@@ -44,7 +75,7 @@ export default (common) => {
|
|
|
44
75
|
void pipe(p[1], listener, p[1]);
|
|
45
76
|
const streams = await Promise.all(Array(expectedStreams).fill(0).map(async () => dialer.newStream()));
|
|
46
77
|
void Promise.all(streams.map(async (stream) => {
|
|
47
|
-
await pipe(infiniteRandom, stream, drain);
|
|
78
|
+
await pipe(infiniteRandom(), stream, drain);
|
|
48
79
|
}));
|
|
49
80
|
expect(dialer.streams).to.have.lengthOf(expectedStreams);
|
|
50
81
|
// Pause, and then close the dialer
|
|
@@ -72,7 +103,7 @@ export default (common) => {
|
|
|
72
103
|
void pipe(p[1], listener, p[1]);
|
|
73
104
|
const streams = await Promise.all(Array(expectedStreams).fill(0).map(async () => dialer.newStream()));
|
|
74
105
|
void Promise.all(streams.map(async (stream) => {
|
|
75
|
-
await pipe(infiniteRandom, stream, drain);
|
|
106
|
+
await pipe(infiniteRandom(), stream, drain);
|
|
76
107
|
}));
|
|
77
108
|
expect(dialer.streams, 'dialer - number of opened streams should match number of calls to newStream').to.have.lengthOf(expectedStreams);
|
|
78
109
|
// Pause, and then close the dialer
|
|
@@ -100,7 +131,7 @@ export default (common) => {
|
|
|
100
131
|
void pipe(p[1], listener, p[1]);
|
|
101
132
|
const streams = await Promise.all(Array(expectedStreams).fill(0).map(async () => dialer.newStream()));
|
|
102
133
|
const streamPipes = streams.map(async (stream) => {
|
|
103
|
-
await pipe(infiniteRandom, stream, drain);
|
|
134
|
+
await pipe(infiniteRandom(), stream, drain);
|
|
104
135
|
});
|
|
105
136
|
expect(dialer.streams, 'dialer - number of opened streams should match number of calls to newStream').to.have.lengthOf(expectedStreams);
|
|
106
137
|
// Pause, and then close the dialer
|
|
@@ -159,7 +190,7 @@ export default (common) => {
|
|
|
159
190
|
const controller = new AbortController();
|
|
160
191
|
controllers.push(controller);
|
|
161
192
|
try {
|
|
162
|
-
const abortableRand = abortableSource(infiniteRandom, controller.signal, { abortCode: 'ERR_TEST_ABORT' });
|
|
193
|
+
const abortableRand = abortableSource(infiniteRandom(), controller.signal, { abortCode: 'ERR_TEST_ABORT' });
|
|
163
194
|
await pipe(abortableRand, stream, drain);
|
|
164
195
|
}
|
|
165
196
|
catch (err) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"close-test.js","sourceRoot":"","sources":["../../../src/stream-muxer/close-test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"close-test.js","sourceRoot":"","sources":["../../../src/stream-muxer/close-test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@libp2p/interface-compliance-tests",
|
|
3
|
-
"version": "4.1.
|
|
3
|
+
"version": "4.1.5-0b4a2ee79",
|
|
4
4
|
"description": "Compliance tests for JS libp2p interfaces",
|
|
5
5
|
"license": "Apache-2.0 OR MIT",
|
|
6
|
-
"homepage": "https://github.com/libp2p/js-libp2p/tree/
|
|
6
|
+
"homepage": "https://github.com/libp2p/js-libp2p/tree/main/packages/interface-compliance-tests#readme",
|
|
7
7
|
"repository": {
|
|
8
8
|
"type": "git",
|
|
9
9
|
"url": "git+https://github.com/libp2p/js-libp2p.git"
|
|
@@ -103,26 +103,26 @@
|
|
|
103
103
|
"test:electron-main": "aegir test -t electron-main"
|
|
104
104
|
},
|
|
105
105
|
"dependencies": {
|
|
106
|
-
"@libp2p/interface": "
|
|
107
|
-
"@libp2p/interface-internal": "
|
|
108
|
-
"@libp2p/logger": "
|
|
109
|
-
"@libp2p/multistream-select": "
|
|
110
|
-
"@libp2p/peer-collections": "
|
|
111
|
-
"@libp2p/peer-id": "
|
|
112
|
-
"@libp2p/peer-id-factory": "
|
|
113
|
-
"@
|
|
106
|
+
"@libp2p/interface": "0.1.6-0b4a2ee79",
|
|
107
|
+
"@libp2p/interface-internal": "0.1.9-0b4a2ee79",
|
|
108
|
+
"@libp2p/logger": "3.1.0-0b4a2ee79",
|
|
109
|
+
"@libp2p/multistream-select": "4.0.6-0b4a2ee79",
|
|
110
|
+
"@libp2p/peer-collections": "4.0.8-0b4a2ee79",
|
|
111
|
+
"@libp2p/peer-id": "3.0.6-0b4a2ee79",
|
|
112
|
+
"@libp2p/peer-id-factory": "3.0.8-0b4a2ee79",
|
|
113
|
+
"@libp2p/utils": "4.0.7-0b4a2ee79",
|
|
114
|
+
"@multiformats/multiaddr": "^12.1.10",
|
|
114
115
|
"abortable-iterator": "^5.0.1",
|
|
115
116
|
"aegir": "^41.0.2",
|
|
116
117
|
"delay": "^6.0.0",
|
|
117
118
|
"it-all": "^3.0.2",
|
|
118
119
|
"it-drain": "^3.0.2",
|
|
119
|
-
"it-
|
|
120
|
-
"it-map": "^3.0.3",
|
|
120
|
+
"it-map": "^3.0.4",
|
|
121
121
|
"it-ndjson": "^1.0.3",
|
|
122
122
|
"it-pair": "^2.0.6",
|
|
123
123
|
"it-pipe": "^3.0.1",
|
|
124
|
-
"it-protobuf-stream": "^1.0.
|
|
125
|
-
"it-pushable": "^3.2.
|
|
124
|
+
"it-protobuf-stream": "^1.0.2",
|
|
125
|
+
"it-pushable": "^3.2.1",
|
|
126
126
|
"it-stream-types": "^2.0.1",
|
|
127
127
|
"it-to-buffer": "^4.0.2",
|
|
128
128
|
"merge-options": "^3.0.4",
|
|
@@ -136,6 +136,6 @@
|
|
|
136
136
|
"uint8arrays": "^4.0.6"
|
|
137
137
|
},
|
|
138
138
|
"devDependencies": {
|
|
139
|
-
"protons": "^7.0
|
|
139
|
+
"protons": "^7.3.0"
|
|
140
140
|
}
|
|
141
141
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { logger } from '@libp2p/logger'
|
|
1
2
|
import { multiaddr } from '@multiformats/multiaddr'
|
|
2
3
|
import { duplexPair } from 'it-pair/duplex'
|
|
3
4
|
import type { MultiaddrConnection } from '@libp2p/interface/connection'
|
|
@@ -14,7 +15,8 @@ export function createMaConnPair (): [MultiaddrConnection, MultiaddrConnection]
|
|
|
14
15
|
remoteAddr: multiaddr('/ip4/127.0.0.1/tcp/4001'),
|
|
15
16
|
timeline: {
|
|
16
17
|
open: Date.now()
|
|
17
|
-
}
|
|
18
|
+
},
|
|
19
|
+
log: logger('duplex-maconn')
|
|
18
20
|
}
|
|
19
21
|
|
|
20
22
|
return output
|
|
@@ -4,7 +4,7 @@ import { PeerMap } from '@libp2p/peer-collections'
|
|
|
4
4
|
import { peerIdFromString } from '@libp2p/peer-id'
|
|
5
5
|
import { isMultiaddr, type Multiaddr } from '@multiformats/multiaddr'
|
|
6
6
|
import { connectionPair } from './connection.js'
|
|
7
|
-
import type { Libp2pEvents, PendingDial } from '@libp2p/interface'
|
|
7
|
+
import type { ComponentLogger, Libp2pEvents, PendingDial } from '@libp2p/interface'
|
|
8
8
|
import type { Connection } from '@libp2p/interface/connection'
|
|
9
9
|
import type { TypedEventTarget } from '@libp2p/interface/events'
|
|
10
10
|
import type { PubSub } from '@libp2p/interface/pubsub'
|
|
@@ -18,6 +18,7 @@ export interface MockNetworkComponents {
|
|
|
18
18
|
connectionManager: ConnectionManager
|
|
19
19
|
events: TypedEventTarget<Libp2pEvents>
|
|
20
20
|
pubsub?: PubSub
|
|
21
|
+
logger: ComponentLogger
|
|
21
22
|
}
|
|
22
23
|
|
|
23
24
|
class MockNetwork {
|
package/src/mocks/connection.ts
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import { CodeError } from '@libp2p/interface/errors'
|
|
2
|
-
import { logger } from '@libp2p/logger'
|
|
2
|
+
import { defaultLogger, logger } from '@libp2p/logger'
|
|
3
3
|
import * as mss from '@libp2p/multistream-select'
|
|
4
4
|
import { peerIdFromString } from '@libp2p/peer-id'
|
|
5
|
+
import { closeSource } from '@libp2p/utils/close-source'
|
|
5
6
|
import { duplexPair } from 'it-pair/duplex'
|
|
6
7
|
import { pipe } from 'it-pipe'
|
|
7
8
|
import { Uint8ArrayList } from 'uint8arraylist'
|
|
8
9
|
import { mockMultiaddrConnection } from './multiaddr-connection.js'
|
|
9
10
|
import { mockMuxer } from './muxer.js'
|
|
10
11
|
import { mockRegistrar } from './registrar.js'
|
|
11
|
-
import type { AbortOptions } from '@libp2p/interface'
|
|
12
|
+
import type { AbortOptions, ComponentLogger, Logger } from '@libp2p/interface'
|
|
12
13
|
import type { MultiaddrConnection, Connection, Stream, Direction, ConnectionTimeline, ConnectionStatus } from '@libp2p/interface/connection'
|
|
13
14
|
import type { PeerId } from '@libp2p/interface/peer-id'
|
|
14
15
|
import type { StreamMuxer, StreamMuxerFactory } from '@libp2p/interface/stream-muxer'
|
|
@@ -16,12 +17,11 @@ import type { Registrar } from '@libp2p/interface-internal/registrar'
|
|
|
16
17
|
import type { Multiaddr } from '@multiformats/multiaddr'
|
|
17
18
|
import type { Duplex, Source } from 'it-stream-types'
|
|
18
19
|
|
|
19
|
-
const log = logger('libp2p:mock-connection')
|
|
20
|
-
|
|
21
20
|
export interface MockConnectionOptions {
|
|
22
21
|
direction?: Direction
|
|
23
22
|
registrar?: Registrar
|
|
24
23
|
muxerFactory?: StreamMuxerFactory
|
|
24
|
+
logger?: ComponentLogger
|
|
25
25
|
}
|
|
26
26
|
|
|
27
27
|
interface MockConnectionInit {
|
|
@@ -30,6 +30,7 @@ interface MockConnectionInit {
|
|
|
30
30
|
direction: Direction
|
|
31
31
|
maConn: MultiaddrConnection
|
|
32
32
|
muxer: StreamMuxer
|
|
33
|
+
logger: ComponentLogger
|
|
33
34
|
}
|
|
34
35
|
|
|
35
36
|
class MockConnection implements Connection {
|
|
@@ -44,12 +45,14 @@ class MockConnection implements Connection {
|
|
|
44
45
|
public streams: Stream[]
|
|
45
46
|
public tags: string[]
|
|
46
47
|
public transient: boolean
|
|
48
|
+
public log: Logger
|
|
47
49
|
|
|
48
50
|
private readonly muxer: StreamMuxer
|
|
49
51
|
private readonly maConn: MultiaddrConnection
|
|
52
|
+
private readonly logger: ComponentLogger
|
|
50
53
|
|
|
51
54
|
constructor (init: MockConnectionInit) {
|
|
52
|
-
const { remoteAddr, remotePeer, direction, maConn, muxer } = init
|
|
55
|
+
const { remoteAddr, remotePeer, direction, maConn, muxer, logger } = init
|
|
53
56
|
|
|
54
57
|
this.id = `mock-connection-${Math.random()}`
|
|
55
58
|
this.remoteAddr = remoteAddr
|
|
@@ -65,6 +68,8 @@ class MockConnection implements Connection {
|
|
|
65
68
|
this.muxer = muxer
|
|
66
69
|
this.maConn = maConn
|
|
67
70
|
this.transient = false
|
|
71
|
+
this.logger = logger
|
|
72
|
+
this.log = logger.forComponent(this.id)
|
|
68
73
|
}
|
|
69
74
|
|
|
70
75
|
async newStream (protocols: string | string[], options?: AbortOptions): Promise<Stream> {
|
|
@@ -82,7 +87,10 @@ class MockConnection implements Connection {
|
|
|
82
87
|
|
|
83
88
|
const id = `${Math.random()}`
|
|
84
89
|
const stream = await this.muxer.newStream(id)
|
|
85
|
-
const result = await mss.select(stream, protocols,
|
|
90
|
+
const result = await mss.select(stream, protocols, {
|
|
91
|
+
...options,
|
|
92
|
+
log: this.logger.forComponent('libp2p:mock-connection:stream:mss:select')
|
|
93
|
+
})
|
|
86
94
|
|
|
87
95
|
stream.protocol = result.protocol
|
|
88
96
|
stream.direction = 'outbound'
|
|
@@ -118,6 +126,7 @@ class MockConnection implements Connection {
|
|
|
118
126
|
export function mockConnection (maConn: MultiaddrConnection, opts: MockConnectionOptions = {}): Connection {
|
|
119
127
|
const remoteAddr = maConn.remoteAddr
|
|
120
128
|
const remotePeerIdStr = remoteAddr.getPeerId() ?? '12D3KooWCrhmFM1BCPGBkNzbPfDk4cjYmtAYSpZwUBC69Qg2kZyq'
|
|
129
|
+
const logger = opts.logger ?? defaultLogger()
|
|
121
130
|
|
|
122
131
|
if (remotePeerIdStr == null) {
|
|
123
132
|
throw new Error('Remote multiaddr must contain a peer id')
|
|
@@ -127,12 +136,15 @@ export function mockConnection (maConn: MultiaddrConnection, opts: MockConnectio
|
|
|
127
136
|
const direction = opts.direction ?? 'inbound'
|
|
128
137
|
const registrar = opts.registrar ?? mockRegistrar()
|
|
129
138
|
const muxerFactory = opts.muxerFactory ?? mockMuxer()
|
|
139
|
+
const log = logger.forComponent('libp2p:mock-muxer')
|
|
130
140
|
|
|
131
141
|
const muxer = muxerFactory.createStreamMuxer({
|
|
132
142
|
direction,
|
|
133
143
|
onIncomingStream: (muxedStream) => {
|
|
134
144
|
try {
|
|
135
|
-
mss.handle(muxedStream, registrar.getProtocols()
|
|
145
|
+
mss.handle(muxedStream, registrar.getProtocols(), {
|
|
146
|
+
log
|
|
147
|
+
})
|
|
136
148
|
.then(({ stream, protocol }) => {
|
|
137
149
|
log('%s: incoming stream opened on %s', direction, protocol)
|
|
138
150
|
muxedStream.protocol = protocol
|
|
@@ -164,7 +176,8 @@ export function mockConnection (maConn: MultiaddrConnection, opts: MockConnectio
|
|
|
164
176
|
remotePeer,
|
|
165
177
|
direction,
|
|
166
178
|
maConn,
|
|
167
|
-
muxer
|
|
179
|
+
muxer,
|
|
180
|
+
logger
|
|
168
181
|
})
|
|
169
182
|
|
|
170
183
|
return connection
|
|
@@ -177,10 +190,12 @@ export interface StreamInit {
|
|
|
177
190
|
}
|
|
178
191
|
|
|
179
192
|
export function mockStream (stream: Duplex<AsyncGenerator<Uint8ArrayList>, Source<Uint8ArrayList | Uint8Array>, Promise<void>>, init: StreamInit = {}): Stream {
|
|
180
|
-
const
|
|
193
|
+
const id = `stream-${Date.now()}`
|
|
194
|
+
const log = logger(`libp2p:mock-stream:${id}`)
|
|
181
195
|
|
|
182
196
|
// ensure stream output is `Uint8ArrayList` as it would be from an actual
|
|
183
197
|
// Stream where everything is length-varint encoded
|
|
198
|
+
const originalSource = stream.source
|
|
184
199
|
stream.source = (async function * (): AsyncGenerator<Uint8ArrayList, any, unknown> {
|
|
185
200
|
for await (const buf of originalSource) {
|
|
186
201
|
if (buf instanceof Uint8Array) {
|
|
@@ -191,12 +206,44 @@ export function mockStream (stream: Duplex<AsyncGenerator<Uint8ArrayList>, Sourc
|
|
|
191
206
|
}
|
|
192
207
|
})()
|
|
193
208
|
|
|
194
|
-
|
|
209
|
+
const abortSinkController = new AbortController()
|
|
210
|
+
const originalSink = stream.sink.bind(stream)
|
|
211
|
+
stream.sink = async (source) => {
|
|
212
|
+
abortSinkController.signal.addEventListener('abort', () => {
|
|
213
|
+
closeSource(source, log)
|
|
214
|
+
})
|
|
215
|
+
|
|
216
|
+
await originalSink(source)
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
const mockStream: Stream = {
|
|
195
220
|
...stream,
|
|
196
|
-
close: async () => {
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
221
|
+
close: async (options) => {
|
|
222
|
+
await mockStream.closeRead(options)
|
|
223
|
+
await mockStream.closeWrite(options)
|
|
224
|
+
},
|
|
225
|
+
closeRead: async () => {
|
|
226
|
+
closeSource(originalSource, log)
|
|
227
|
+
mockStream.timeline.closeRead = Date.now()
|
|
228
|
+
|
|
229
|
+
if (mockStream.timeline.closeWrite != null) {
|
|
230
|
+
mockStream.timeline.close = Date.now()
|
|
231
|
+
}
|
|
232
|
+
},
|
|
233
|
+
closeWrite: async () => {
|
|
234
|
+
abortSinkController.abort()
|
|
235
|
+
mockStream.timeline.closeWrite = Date.now()
|
|
236
|
+
|
|
237
|
+
if (mockStream.timeline.closeRead != null) {
|
|
238
|
+
mockStream.timeline.close = Date.now()
|
|
239
|
+
}
|
|
240
|
+
},
|
|
241
|
+
abort: () => {
|
|
242
|
+
closeSource(originalSource, log)
|
|
243
|
+
mockStream.timeline.closeWrite = Date.now()
|
|
244
|
+
mockStream.timeline.closeRead = Date.now()
|
|
245
|
+
mockStream.timeline.close = Date.now()
|
|
246
|
+
},
|
|
200
247
|
direction: 'outbound',
|
|
201
248
|
protocol: '/foo/1.0.0',
|
|
202
249
|
timeline: {
|
|
@@ -207,8 +254,11 @@ export function mockStream (stream: Duplex<AsyncGenerator<Uint8ArrayList>, Sourc
|
|
|
207
254
|
status: 'open',
|
|
208
255
|
readStatus: 'ready',
|
|
209
256
|
writeStatus: 'ready',
|
|
257
|
+
log: logger('mock-stream'),
|
|
210
258
|
...init
|
|
211
259
|
}
|
|
260
|
+
|
|
261
|
+
return mockStream
|
|
212
262
|
}
|
|
213
263
|
|
|
214
264
|
export interface StreamPairInit {
|
package/src/mocks/index.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
export { mockConnectionEncrypter } from './connection-encrypter.js'
|
|
2
1
|
export { mockConnectionGater } from './connection-gater.js'
|
|
3
2
|
export { mockConnectionManager, mockNetwork } from './connection-manager.js'
|
|
4
3
|
export { mockConnection, mockStream, streamPair, connectionPair } from './connection.js'
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { logger } from '@libp2p/logger'
|
|
1
2
|
import { multiaddr } from '@multiformats/multiaddr'
|
|
2
3
|
import { abortableSource } from 'abortable-iterator'
|
|
3
4
|
import { duplexPair } from 'it-pair/duplex'
|
|
@@ -16,6 +17,7 @@ export function mockMultiaddrConnection (source: Duplex<AsyncGenerator<Uint8Arra
|
|
|
16
17
|
open: Date.now()
|
|
17
18
|
},
|
|
18
19
|
remoteAddr: multiaddr(`/ip4/127.0.0.1/tcp/4001/p2p/${peerId.toString()}`),
|
|
20
|
+
log: logger('mock-maconn'),
|
|
19
21
|
...source
|
|
20
22
|
}
|
|
21
23
|
|
|
@@ -49,7 +51,8 @@ export function mockMultiaddrConnPair (opts: MockMultiaddrConnPairOptions): { in
|
|
|
49
51
|
abort: (err: Error) => {
|
|
50
52
|
outbound.timeline.close = Date.now()
|
|
51
53
|
controller.abort(err)
|
|
52
|
-
}
|
|
54
|
+
},
|
|
55
|
+
log: logger('mock-maconn-outbound')
|
|
53
56
|
}
|
|
54
57
|
|
|
55
58
|
const inbound: MultiaddrConnection = {
|
|
@@ -65,7 +68,8 @@ export function mockMultiaddrConnPair (opts: MockMultiaddrConnPairOptions): { in
|
|
|
65
68
|
abort: (err: Error) => {
|
|
66
69
|
outbound.timeline.close = Date.now()
|
|
67
70
|
controller.abort(err)
|
|
68
|
-
}
|
|
71
|
+
},
|
|
72
|
+
log: logger('mock-maconn-inbound')
|
|
69
73
|
}
|
|
70
74
|
|
|
71
75
|
// Make the sources abortable so we can close them easily
|
package/src/mocks/muxer.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { AbstractStream, type AbstractStreamInit } from '@libp2p/interface/stream-muxer/stream'
|
|
2
1
|
import { type Logger, logger } from '@libp2p/logger'
|
|
2
|
+
import { AbstractStream, type AbstractStreamInit } from '@libp2p/utils/abstract-stream'
|
|
3
3
|
import { abortableSource } from 'abortable-iterator'
|
|
4
4
|
import map from 'it-map'
|
|
5
5
|
import * as ndjson from 'it-ndjson'
|
|
@@ -249,14 +249,27 @@ class MockMuxer implements StreamMuxer {
|
|
|
249
249
|
return
|
|
250
250
|
}
|
|
251
251
|
|
|
252
|
-
|
|
252
|
+
const signal = options?.signal ?? AbortSignal.timeout(10)
|
|
253
253
|
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
254
|
+
try {
|
|
255
|
+
// try to gracefully close all streams
|
|
256
|
+
await Promise.all(
|
|
257
|
+
this.streams.map(async s => s.close({
|
|
258
|
+
signal
|
|
259
|
+
}))
|
|
260
|
+
)
|
|
261
|
+
|
|
262
|
+
this.input.end()
|
|
257
263
|
|
|
258
|
-
|
|
259
|
-
|
|
264
|
+
// try to gracefully close the muxer
|
|
265
|
+
await this.input.onEmpty({
|
|
266
|
+
signal
|
|
267
|
+
})
|
|
268
|
+
|
|
269
|
+
this.closeController.abort()
|
|
270
|
+
} catch (err: any) {
|
|
271
|
+
this.abort(err)
|
|
272
|
+
}
|
|
260
273
|
}
|
|
261
274
|
|
|
262
275
|
abort (err: Error): void {
|
|
@@ -49,8 +49,7 @@ export class MockDiscovery extends TypedEventEmitter<PeerDiscoveryEvents> implem
|
|
|
49
49
|
this.safeDispatchEvent<PeerInfo>('peer', {
|
|
50
50
|
detail: {
|
|
51
51
|
id: peerId,
|
|
52
|
-
multiaddrs: [multiaddr('/ip4/127.0.0.1/tcp/8000')]
|
|
53
|
-
protocols: []
|
|
52
|
+
multiaddrs: [multiaddr('/ip4/127.0.0.1/tcp/8000')]
|
|
54
53
|
}
|
|
55
54
|
})
|
|
56
55
|
}, this.options.discoveryDelay ?? 1000)
|
package/src/pubsub/api.ts
CHANGED
|
@@ -48,7 +48,6 @@ export default (common: TestSetup<PubSub, PubSubArgs>): void => {
|
|
|
48
48
|
|
|
49
49
|
await start(...Object.values(components))
|
|
50
50
|
|
|
51
|
-
expect(pubsub.isStarted()).to.equal(true)
|
|
52
51
|
expect(components.registrar.register).to.have.property('callCount', 1)
|
|
53
52
|
})
|
|
54
53
|
|
|
@@ -62,7 +61,6 @@ export default (common: TestSetup<PubSub, PubSubArgs>): void => {
|
|
|
62
61
|
await start(...Object.values(components))
|
|
63
62
|
await stop(...Object.values(components))
|
|
64
63
|
|
|
65
|
-
expect(pubsub.isStarted()).to.equal(false)
|
|
66
64
|
expect(components.registrar.unregister).to.have.property('callCount', 1)
|
|
67
65
|
})
|
|
68
66
|
|
package/src/pubsub/index.ts
CHANGED
|
@@ -5,6 +5,7 @@ import messagesTest from './messages.js'
|
|
|
5
5
|
import multipleNodesTest from './multiple-nodes.js'
|
|
6
6
|
import twoNodesTest from './two-nodes.js'
|
|
7
7
|
import type { TestSetup } from '../index.js'
|
|
8
|
+
import type { ComponentLogger } from '@libp2p/interface'
|
|
8
9
|
import type { PeerId } from '@libp2p/interface/peer-id'
|
|
9
10
|
import type { PubSub, PubSubInit } from '@libp2p/interface/pubsub'
|
|
10
11
|
import type { ConnectionManager } from '@libp2p/interface-internal/connection-manager'
|
|
@@ -15,6 +16,7 @@ export interface PubSubComponents {
|
|
|
15
16
|
registrar: Registrar
|
|
16
17
|
connectionManager: ConnectionManager
|
|
17
18
|
pubsub?: PubSub
|
|
19
|
+
logger: ComponentLogger
|
|
18
20
|
}
|
|
19
21
|
|
|
20
22
|
export interface PubSubArgs {
|