@peerbit/libp2p-test-utils 2.0.6 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -13,6 +13,10 @@ export declare class TestSession<T> {
13
13
  getMultiaddrs: () => Multiaddr[];
14
14
  dial: (addres: Multiaddr[]) => Promise<any>;
15
15
  }[][]): Promise<this>;
16
+ connectLine(groups?: {
17
+ getMultiaddrs: () => Multiaddr[];
18
+ dial: (addres: Multiaddr[]) => Promise<any>;
19
+ }[][]): Promise<this>;
16
20
  static connected<T extends Record<string, unknown>>(n: number, options?: Libp2pOptions<T> | Libp2pOptions<T>[]): Promise<TestSession<T>>;
17
21
  static disconnected<T extends Record<string, unknown>>(n: number, options?: Libp2pOptions<T> | Libp2pOptions<T>[]): Promise<TestSession<T>>;
18
22
  stop(): Promise<any>;
@@ -28,6 +28,22 @@ export class TestSession {
28
28
  await Promise.all(connectPromises);
29
29
  return this;
30
30
  }
31
+ async connectLine(groups) {
32
+ const connectPromises = [];
33
+ if (!groups) {
34
+ groups = [this.peers];
35
+ }
36
+ for (const group of groups) {
37
+ for (let i = 0; i < group.length - 1; i++) {
38
+ const toDial = group[i + 1]
39
+ .getMultiaddrs()
40
+ .filter((x) => x.protoCodes().includes(290) === false);
41
+ connectPromises.push(group[i].dial(toDial)); // By default don't connect to relayed (p2p-circuit) peers
42
+ }
43
+ }
44
+ await Promise.all(connectPromises);
45
+ return this;
46
+ }
31
47
  static async connected(n, options) {
32
48
  const libs = (await TestSession.disconnected(n, options)).peers;
33
49
  return new TestSession(libs).connect();
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAA4C,MAAM,QAAQ,CAAC;AAChF,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAM5C,MAAM,OAAO,WAAW;IACvB,KAAK,CAA4C;IAEjD,YAAY,KAAgD;QAC3D,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,OAAO,CACZ,MAGK;QAEL,oBAAoB;QACpB,MAAM,eAAe,GAAmB,EAAE,CAAC;QAC3C,IAAI,CAAC,MAAM,EAAE,CAAC;YACb,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC3C,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC;yBACrB,aAAa,EAAE;yBACf,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,CAAC;oBACxD,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,0DAA0D;gBACxG,CAAC;YACF,CAAC;QACF,CAAC;QAED,MAAM,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC;IACb,CAAC;IACD,MAAM,CAAC,KAAK,CAAC,SAAS,CACrB,CAAS,EACT,OAA+C;QAE/C,MAAM,IAAI,GAAG,CAAC,MAAM,WAAW,CAAC,YAAY,CAAI,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;QACnE,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;IACxC,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,YAAY,CACxB,CAAS,EACT,OAA+C;QAE/C,+BAA+B;QAC/B,eAAe,CAAC,QAAQ,CAAC,CAAC;QAE1B,eAAe;QACf,MAAM,QAAQ,GAAyB,EAAE,CAAC;QAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5B,MAAM,MAAM,GAAG,KAAK,IAAI,EAAE;gBACzB,MAAM,IAAI,GAAG,MAAM,YAAY,CAAI;oBAClC,SAAS,EAAE;wBACV,MAAM,EAAE,CAAC,sBAAsB,EAAE,yBAAyB,CAAC;qBAC3D;oBACD,iBAAiB,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,EAAE,iBAAiB,IAAI;wBAClE,cAAc,EAAE,CAAC;qBACjB;oBACD,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,EAAE,MAAM;oBACzC,SAAS,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,EAAE,SAAS;oBAC/C,UAAU,EACT,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,EAAE,UAAU;wBACrC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,EAAE,OAAO,CAAC;oBAC/C,QAAQ,EAAE;wBACT,KAAK,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,EAAE;wBAC/D,QAAQ,EAAE,QAAQ,EAAE;wBACpB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,EAAE,QAAQ;qBACtC;oBACD,oBAAoB,EAAE,CAAC,KAAK,EAAE,CAAC;oBAC/B,YAAY,EAAE,CAAC,KAAK,CAAC,EAAE,mBAAmB,EAAE,EAAE,EAAE,CAAC,CAAC;oBAClD,KAAK,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,EAAE,KAAK;iBACvC,CAAC,CAAC;gBACH,OAAO,IAAI,CAAC;YACb,CAAC,CAAC;YACF,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACzB,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAkC,CAAC;QAC5E,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI;QACH,OAAO,OAAO,CAAC,GAAG,CACjB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;YAC1B,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;QACjB,CAAC,CAAC,CACF,CAAC;IACH,CAAC;CACD"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/session.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@peerbit/libp2p-test-utils",
3
- "version": "2.0.6",
3
+ "version": "2.1.0",
4
4
  "description": "Test utils for Peerbit",
5
5
  "type": "module",
6
6
  "private": false,
@@ -52,5 +52,5 @@
52
52
  "localMaintainers": [
53
53
  "dao.xyz"
54
54
  ],
55
- "gitHead": "e50907578b203c2f16199e91545c5213cf8cdc3e"
55
+ "gitHead": "61872057c34273319e5c88c48ee77322f434567b"
56
56
  }
package/src/session.ts CHANGED
@@ -41,6 +41,30 @@ export class TestSession<T> {
41
41
  await Promise.all(connectPromises);
42
42
  return this;
43
43
  }
44
+
45
+ async connectLine(
46
+ groups?: {
47
+ getMultiaddrs: () => Multiaddr[];
48
+ dial: (addres: Multiaddr[]) => Promise<any>;
49
+ }[][]
50
+ ) {
51
+ const connectPromises: Promise<any>[] = [];
52
+ if (!groups) {
53
+ groups = [this.peers];
54
+ }
55
+ for (const group of groups) {
56
+ for (let i = 0; i < group.length - 1; i++) {
57
+ const toDial = group[i + 1]
58
+ .getMultiaddrs()
59
+ .filter((x) => x.protoCodes().includes(290) === false);
60
+ connectPromises.push(group[i].dial(toDial)); // By default don't connect to relayed (p2p-circuit) peers
61
+ }
62
+ }
63
+
64
+ await Promise.all(connectPromises);
65
+ return this;
66
+ }
67
+
44
68
  static async connected<T extends Record<string, unknown>>(
45
69
  n: number,
46
70
  options?: Libp2pOptions<T> | Libp2pOptions<T>[]