1
1
use crate :: builder:: NodeBuilder ;
2
2
use crate :: io:: KVStore ;
3
3
use crate :: test:: utils:: * ;
4
- use crate :: test:: utils:: { expect_event, random_config} ;
4
+ use crate :: test:: utils:: { expect_event, random_config, setup_two_nodes } ;
5
5
use crate :: { Error , Event , Node , PaymentDirection , PaymentStatus } ;
6
6
7
7
use bitcoin:: Amount ;
@@ -11,45 +11,14 @@ use electrsd::ElectrsD;
11
11
#[ test]
12
12
fn channel_full_cycle ( ) {
13
13
let ( bitcoind, electrsd) = setup_bitcoind_and_electrsd ( ) ;
14
- println ! ( "== Node A ==" ) ;
15
- let esplora_url = format ! ( "http://{}" , electrsd. esplora_url. as_ref( ) . unwrap( ) ) ;
16
- let config_a = random_config ( ) ;
17
- let mut builder_a = NodeBuilder :: from_config ( config_a) ;
18
- builder_a. set_esplora_server ( esplora_url. clone ( ) ) ;
19
- let node_a = builder_a. build ( ) . unwrap ( ) ;
20
- node_a. start ( ) . unwrap ( ) ;
21
-
22
- println ! ( "\n == Node B ==" ) ;
23
- let config_b = random_config ( ) ;
24
- let mut builder_b = NodeBuilder :: from_config ( config_b) ;
25
- builder_b. set_esplora_server ( esplora_url) ;
26
- let node_b = builder_b. build ( ) . unwrap ( ) ;
27
- node_b. start ( ) . unwrap ( ) ;
28
-
14
+ let ( node_a, node_b) = setup_two_nodes ( & electrsd, false ) ;
29
15
do_channel_full_cycle ( node_a, node_b, & bitcoind, & electrsd, false ) ;
30
16
}
31
17
32
18
#[ test]
33
19
fn channel_full_cycle_0conf ( ) {
34
20
let ( bitcoind, electrsd) = setup_bitcoind_and_electrsd ( ) ;
35
- println ! ( "== Node A ==" ) ;
36
- let esplora_url = format ! ( "http://{}" , electrsd. esplora_url. as_ref( ) . unwrap( ) ) ;
37
- let config_a = random_config ( ) ;
38
- let mut builder_a = NodeBuilder :: from_config ( config_a) ;
39
- builder_a. set_esplora_server ( esplora_url. clone ( ) ) ;
40
- let node_a = builder_a. build ( ) . unwrap ( ) ;
41
- node_a. start ( ) . unwrap ( ) ;
42
-
43
- println ! ( "\n == Node B ==" ) ;
44
- let mut config_b = random_config ( ) ;
45
- config_b. trusted_peers_0conf . push ( node_a. node_id ( ) ) ;
46
-
47
- let mut builder_b = NodeBuilder :: from_config ( config_b) ;
48
- builder_b. set_esplora_server ( esplora_url. clone ( ) ) ;
49
- let node_b = builder_b. build ( ) . unwrap ( ) ;
50
-
51
- node_b. start ( ) . unwrap ( ) ;
52
-
21
+ let ( node_a, node_b) = setup_two_nodes ( & electrsd, true ) ;
53
22
do_channel_full_cycle ( node_a, node_b, & bitcoind, & electrsd, true )
54
23
}
55
24
@@ -271,21 +240,9 @@ fn do_channel_full_cycle<K: KVStore + Sync + Send>(
271
240
#[ test]
272
241
fn channel_open_fails_when_funds_insufficient ( ) {
273
242
let ( bitcoind, electrsd) = setup_bitcoind_and_electrsd ( ) ;
274
- println ! ( "== Node A ==" ) ;
275
- let esplora_url = format ! ( "http://{}" , electrsd. esplora_url. as_ref( ) . unwrap( ) ) ;
276
- let config_a = random_config ( ) ;
277
- let mut builder_a = NodeBuilder :: from_config ( config_a) ;
278
- builder_a. set_esplora_server ( esplora_url. clone ( ) ) ;
279
- let node_a = builder_a. build ( ) . unwrap ( ) ;
280
- node_a. start ( ) . unwrap ( ) ;
281
- let addr_a = node_a. new_onchain_address ( ) . unwrap ( ) ;
243
+ let ( node_a, node_b) = setup_two_nodes ( & electrsd, false ) ;
282
244
283
- println ! ( "\n == Node B ==" ) ;
284
- let config_b = random_config ( ) ;
285
- let mut builder_b = NodeBuilder :: from_config ( config_b) ;
286
- builder_b. set_esplora_server ( esplora_url) ;
287
- let node_b = builder_b. build ( ) . unwrap ( ) ;
288
- node_b. start ( ) . unwrap ( ) ;
245
+ let addr_a = node_a. new_onchain_address ( ) . unwrap ( ) ;
289
246
let addr_b = node_b. new_onchain_address ( ) . unwrap ( ) ;
290
247
291
248
let premine_amount_sat = 100_000 ;
@@ -329,26 +286,22 @@ fn connect_to_public_testnet_esplora() {
329
286
#[ test]
330
287
fn start_stop_reinit ( ) {
331
288
let ( bitcoind, electrsd) = setup_bitcoind_and_electrsd ( ) ;
332
- let esplora_url = format ! ( "http://{}" , electrsd. esplora_url. as_ref( ) . unwrap( ) ) ;
333
289
let config = random_config ( ) ;
334
- let mut builder = NodeBuilder :: from_config ( config. clone ( ) ) ;
335
- builder. set_esplora_server ( esplora_url. clone ( ) ) ;
336
- let node = builder. build ( ) . unwrap ( ) ;
290
+ let node = setup_node ( & electrsd, config. clone ( ) ) ;
291
+
337
292
let expected_node_id = node. node_id ( ) ;
293
+ assert_eq ! ( node. start( ) , Err ( Error :: AlreadyRunning ) ) ;
338
294
339
295
let funding_address = node. new_onchain_address ( ) . unwrap ( ) ;
340
296
let expected_amount = Amount :: from_sat ( 100000 ) ;
341
297
342
298
premine_and_distribute_funds ( & bitcoind, & electrsd, vec ! [ funding_address] , expected_amount) ;
343
299
assert_eq ! ( node. total_onchain_balance_sats( ) . unwrap( ) , 0 ) ;
344
300
345
- node. start ( ) . unwrap ( ) ;
346
- assert_eq ! ( node. start( ) , Err ( Error :: AlreadyRunning ) ) ;
347
-
348
301
node. sync_wallets ( ) . unwrap ( ) ;
349
302
assert_eq ! ( node. spendable_onchain_balance_sats( ) . unwrap( ) , expected_amount. to_sat( ) ) ;
350
303
351
- let log_file_symlink = format ! ( "{}/logs/ldk_node_latest.log" , config. storage_dir_path) ;
304
+ let log_file_symlink = format ! ( "{}/logs/ldk_node_latest.log" , config. clone ( ) . storage_dir_path) ;
352
305
assert ! ( std:: path:: Path :: new( & log_file_symlink) . is_symlink( ) ) ;
353
306
354
307
node. stop ( ) . unwrap ( ) ;
@@ -361,66 +314,9 @@ fn start_stop_reinit() {
361
314
assert_eq ! ( node. stop( ) , Err ( Error :: NotRunning ) ) ;
362
315
drop ( node) ;
363
316
364
- let mut new_builder = NodeBuilder :: from_config ( config) ;
365
- new_builder. set_esplora_server ( esplora_url) ;
366
- let reinitialized_node = builder. build ( ) . unwrap ( ) ;
367
- assert_eq ! ( reinitialized_node. node_id( ) , expected_node_id) ;
368
-
369
- reinitialized_node. start ( ) . unwrap ( ) ;
370
-
371
- assert_eq ! (
372
- reinitialized_node. spendable_onchain_balance_sats( ) . unwrap( ) ,
373
- expected_amount. to_sat( )
374
- ) ;
375
-
376
- reinitialized_node. sync_wallets ( ) . unwrap ( ) ;
377
- assert_eq ! (
378
- reinitialized_node. spendable_onchain_balance_sats( ) . unwrap( ) ,
379
- expected_amount. to_sat( )
380
- ) ;
381
-
382
- reinitialized_node. stop ( ) . unwrap ( ) ;
383
- }
384
-
385
- #[ test]
386
- fn start_stop_reinit_fs_store ( ) {
387
- let ( bitcoind, electrsd) = setup_bitcoind_and_electrsd ( ) ;
388
- let esplora_url = format ! ( "http://{}" , electrsd. esplora_url. as_ref( ) . unwrap( ) ) ;
389
- let config = random_config ( ) ;
390
- let mut builder = NodeBuilder :: from_config ( config. clone ( ) ) ;
391
- builder. set_esplora_server ( esplora_url. clone ( ) ) ;
392
- let node = builder. build_with_fs_store ( ) . unwrap ( ) ;
393
- let expected_node_id = node. node_id ( ) ;
394
-
395
- let funding_address = node. new_onchain_address ( ) . unwrap ( ) ;
396
- let expected_amount = Amount :: from_sat ( 100000 ) ;
397
-
398
- premine_and_distribute_funds ( & bitcoind, & electrsd, vec ! [ funding_address] , expected_amount) ;
399
- assert_eq ! ( node. total_onchain_balance_sats( ) . unwrap( ) , 0 ) ;
400
-
401
- node. start ( ) . unwrap ( ) ;
402
- assert_eq ! ( node. start( ) , Err ( Error :: AlreadyRunning ) ) ;
403
-
404
- node. sync_wallets ( ) . unwrap ( ) ;
405
- assert_eq ! ( node. spendable_onchain_balance_sats( ) . unwrap( ) , expected_amount. to_sat( ) ) ;
406
-
407
- node. stop ( ) . unwrap ( ) ;
408
- assert_eq ! ( node. stop( ) , Err ( Error :: NotRunning ) ) ;
409
-
410
- node. start ( ) . unwrap ( ) ;
411
- assert_eq ! ( node. start( ) , Err ( Error :: AlreadyRunning ) ) ;
412
-
413
- node. stop ( ) . unwrap ( ) ;
414
- assert_eq ! ( node. stop( ) , Err ( Error :: NotRunning ) ) ;
415
- drop ( node) ;
416
-
417
- let mut new_builder = NodeBuilder :: from_config ( config) ;
418
- new_builder. set_esplora_server ( esplora_url) ;
419
- let reinitialized_node = builder. build_with_fs_store ( ) . unwrap ( ) ;
317
+ let reinitialized_node = setup_node ( & electrsd, config) ;
420
318
assert_eq ! ( reinitialized_node. node_id( ) , expected_node_id) ;
421
319
422
- reinitialized_node. start ( ) . unwrap ( ) ;
423
-
424
320
assert_eq ! (
425
321
reinitialized_node. spendable_onchain_balance_sats( ) . unwrap( ) ,
426
322
expected_amount. to_sat( )
@@ -438,20 +334,9 @@ fn start_stop_reinit_fs_store() {
438
334
#[ test]
439
335
fn onchain_spend_receive ( ) {
440
336
let ( bitcoind, electrsd) = setup_bitcoind_and_electrsd ( ) ;
441
- let esplora_url = format ! ( "http://{}" , electrsd . esplora_url . as_ref ( ) . unwrap ( ) ) ;
337
+ let ( node_a , node_b ) = setup_two_nodes ( & electrsd , false ) ;
442
338
443
- let config_a = random_config ( ) ;
444
- let mut builder_a = NodeBuilder :: from_config ( config_a) ;
445
- builder_a. set_esplora_server ( esplora_url. clone ( ) ) ;
446
- let node_a = builder_a. build ( ) . unwrap ( ) ;
447
- node_a. start ( ) . unwrap ( ) ;
448
339
let addr_a = node_a. new_onchain_address ( ) . unwrap ( ) ;
449
-
450
- let config_b = random_config ( ) ;
451
- let mut builder_b = NodeBuilder :: from_config ( config_b) ;
452
- builder_b. set_esplora_server ( esplora_url) ;
453
- let node_b = builder_b. build ( ) . unwrap ( ) ;
454
- node_b. start ( ) . unwrap ( ) ;
455
340
let addr_b = node_b. new_onchain_address ( ) . unwrap ( ) ;
456
341
457
342
premine_and_distribute_funds (
@@ -494,13 +379,8 @@ fn onchain_spend_receive() {
494
379
#[ test]
495
380
fn sign_verify_msg ( ) {
496
381
let ( _bitcoind, electrsd) = setup_bitcoind_and_electrsd ( ) ;
497
- let esplora_url = format ! ( "http://{}" , electrsd. esplora_url. as_ref( ) . unwrap( ) ) ;
498
382
let config = random_config ( ) ;
499
- let mut builder = NodeBuilder :: from_config ( config. clone ( ) ) ;
500
- builder. set_esplora_server ( esplora_url. clone ( ) ) ;
501
- let node = builder. build ( ) . unwrap ( ) ;
502
-
503
- node. start ( ) . unwrap ( ) ;
383
+ let node = setup_node ( & electrsd, config) ;
504
384
505
385
// Tests arbitrary message signing and later verification
506
386
let msg = "OK computer" . as_bytes ( ) ;
0 commit comments