@@ -12,10 +12,18 @@ import { makeNodeId } from '@/nodes/utils';
1212import * as nodesUtils from '@/nodes/utils' ;
1313import { ForwardProxy , ReverseProxy } from '@/network' ;
1414import * as nodesErrors from '@/nodes/errors' ;
15+ import * as keysUtils from '@/keys/utils' ;
1516import * as nodesTestUtils from './utils' ;
1617import { makeCrypto } from '../utils' ;
1718import * as testUtils from '../utils' ;
1819
20+ // Mocks.
21+ jest . mock ( '@/keys/utils' , ( ) => ( {
22+ ...jest . requireActual ( '@/keys/utils' ) ,
23+ generateDeterministicKeyPair :
24+ jest . requireActual ( '@/keys/utils' ) . generateKeyPair ,
25+ } ) ) ;
26+
1927describe ( 'NodeConnectionManager test' , ( ) => {
2028 const logger = new Logger ( 'NodeGraph Test' , LogLevel . WARN , [
2129 new StreamHandler ( ) ,
@@ -45,6 +53,9 @@ describe('NodeConnectionManager test', () => {
4553 'vi3et1hrpv2m2lrplcm7cu913kr45v51cak54vm68anlbvuf83ra0' ,
4654 ) ;
4755
56+ const serverHost = '::1' as Host ;
57+ const serverPort = 1 as Port ;
58+
4859 //
4960 let dataDir : string ;
5061 let keyManager : KeyManager ;
@@ -92,17 +103,6 @@ describe('NodeConnectionManager test', () => {
92103 return makeNodeId ( idArray ) ;
93104 } ;
94105
95- beforeAll ( async ( ) => {
96- fwdProxy = new ForwardProxy ( {
97- authToken : 'auth' ,
98- logger : logger ,
99- } ) ;
100-
101- revProxy = new ReverseProxy ( {
102- logger : logger ,
103- } ) ;
104- } ) ;
105-
106106 beforeEach ( async ( ) => {
107107 dataDir = await fs . promises . mkdtemp (
108108 path . join ( os . tmpdir ( ) , 'polykey-test-' ) ,
@@ -124,6 +124,25 @@ describe('NodeConnectionManager test', () => {
124124 keyManager,
125125 logger,
126126 } ) ;
127+ const tlsConfig = {
128+ keyPrivatePem : keyManager . getRootKeyPairPem ( ) . privateKey ,
129+ certChainPem : keysUtils . certToPem ( keyManager . getRootCert ( ) ) ,
130+ } ;
131+ fwdProxy = new ForwardProxy ( {
132+ authToken : 'auth' ,
133+ logger : logger ,
134+ } ) ;
135+ await fwdProxy . start ( {
136+ tlsConfig,
137+ } ) ;
138+ revProxy = new ReverseProxy ( {
139+ logger : logger ,
140+ } ) ;
141+ await revProxy . start ( {
142+ serverHost,
143+ serverPort,
144+ tlsConfig,
145+ } ) ;
127146 } ) ;
128147
129148 afterEach ( async ( ) => {
@@ -133,9 +152,6 @@ describe('NodeConnectionManager test', () => {
133152 await db . destroy ( ) ;
134153 await keyManager . stop ( ) ;
135154 await keyManager . destroy ( ) ;
136- } ) ;
137-
138- afterAll ( async ( ) => {
139155 await revProxy . stop ( ) ;
140156 await fwdProxy . stop ( ) ;
141157 } ) ;
@@ -178,6 +194,7 @@ describe('NodeConnectionManager test', () => {
178194 nodeGraph,
179195 fwdProxy,
180196 revProxy,
197+ logger,
181198 } ) ;
182199 try {
183200 const initialConnLock =
@@ -203,6 +220,7 @@ describe('NodeConnectionManager test', () => {
203220 nodeGraph,
204221 fwdProxy,
205222 revProxy,
223+ logger,
206224 } ) ;
207225 try {
208226 // @ts -ignore accessing protected NodeConnectionMap
@@ -228,6 +246,7 @@ describe('NodeConnectionManager test', () => {
228246 nodeGraph,
229247 fwdProxy,
230248 revProxy,
249+ logger,
231250 } ) ;
232251 try {
233252 // @ts -ignore accessing protected NodeConnectionMap
@@ -260,6 +279,7 @@ describe('NodeConnectionManager test', () => {
260279 nodeGraph,
261280 fwdProxy,
262281 revProxy,
282+ logger,
263283 } ) ;
264284 try {
265285 // Add the dummy node
@@ -268,15 +288,15 @@ describe('NodeConnectionManager test', () => {
268288 port : 55555 as Port ,
269289 } ) ;
270290 // @ts -ignore accessing protected NodeConnectionMap
271- expect ( nodeManager . connections . size ) . toBe ( 0 ) ;
291+ expect ( nodeConnectionManager . connections . size ) . toBe ( 0 ) ;
272292
273293 await expect ( ( ) =>
274294 nodeConnectionManager . createConnection ( dummyNode ) ,
275295 ) . rejects . toThrow ( nodesErrors . ErrorNodeConnectionTimeout ) ;
276296 // @ts -ignore accessing protected NodeConnectionMap
277- expect ( nodeManager . connections . size ) . toBe ( 1 ) ;
297+ expect ( nodeConnectionManager . connections . size ) . toBe ( 1 ) ;
278298 // @ts -ignore accessing protected NodeConnectionMap
279- const connLock = nodeManager . connections . get ( dummyNode ) ;
299+ const connLock = nodeConnectionManager . connections . get ( dummyNode ) ;
280300 // There should still be an entry in the connection map, but it should
281301 // only contain a lock - no connection.
282302 expect ( connLock ) . toBeDefined ( ) ;
@@ -301,6 +321,7 @@ describe('NodeConnectionManager test', () => {
301321 nodeGraph,
302322 fwdProxy,
303323 revProxy,
324+ logger,
304325 } ) ;
305326 try {
306327 // Case 1: node already exists in the local node graph (no contact required)
@@ -328,6 +349,7 @@ describe('NodeConnectionManager test', () => {
328349 nodeGraph,
329350 fwdProxy,
330351 revProxy,
352+ logger,
331353 } ) ;
332354 try {
333355 // Case 2: node can be found on the remote node
@@ -362,6 +384,7 @@ describe('NodeConnectionManager test', () => {
362384 nodeGraph,
363385 fwdProxy,
364386 revProxy,
387+ logger,
365388 } ) ;
366389 try {
367390 // Case 3: node exhausts all contacts and cannot find node
@@ -398,6 +421,7 @@ describe('NodeConnectionManager test', () => {
398421 nodeGraph,
399422 fwdProxy,
400423 revProxy,
424+ logger,
401425 } ) ;
402426 try {
403427 // New node added
0 commit comments