11use crate :: builder:: NodeBuilder ;
22use crate :: io:: KVStore ;
33use crate :: test:: utils:: * ;
4- use crate :: test:: utils:: { expect_event, random_config} ;
4+ use crate :: test:: utils:: { expect_event, random_config, setup_two_nodes } ;
55use crate :: { Error , Event , Node , PaymentDirection , PaymentStatus } ;
66
77use bitcoin:: Amount ;
@@ -11,45 +11,14 @@ use electrsd::ElectrsD;
1111#[ test]
1212fn channel_full_cycle ( ) {
1313 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 ) ;
2915 do_channel_full_cycle ( node_a, node_b, & bitcoind, & electrsd, false ) ;
3016}
3117
3218#[ test]
3319fn channel_full_cycle_0conf ( ) {
3420 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 ) ;
5322 do_channel_full_cycle ( node_a, node_b, & bitcoind, & electrsd, true )
5423}
5524
@@ -271,21 +240,9 @@ fn do_channel_full_cycle<K: KVStore + Sync + Send>(
271240#[ test]
272241fn channel_open_fails_when_funds_insufficient ( ) {
273242 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 ) ;
282244
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 ( ) ;
289246 let addr_b = node_b. new_onchain_address ( ) . unwrap ( ) ;
290247
291248 let premine_amount_sat = 100_000 ;
@@ -329,26 +286,22 @@ fn connect_to_public_testnet_esplora() {
329286#[ test]
330287fn start_stop_reinit ( ) {
331288 let ( bitcoind, electrsd) = setup_bitcoind_and_electrsd ( ) ;
332- let esplora_url = format ! ( "http://{}" , electrsd. esplora_url. as_ref( ) . unwrap( ) ) ;
333289 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+
337292 let expected_node_id = node. node_id ( ) ;
293+ assert_eq ! ( node. start( ) , Err ( Error :: AlreadyRunning ) ) ;
338294
339295 let funding_address = node. new_onchain_address ( ) . unwrap ( ) ;
340296 let expected_amount = Amount :: from_sat ( 100000 ) ;
341297
342298 premine_and_distribute_funds ( & bitcoind, & electrsd, vec ! [ funding_address] , expected_amount) ;
343299 assert_eq ! ( node. total_onchain_balance_sats( ) . unwrap( ) , 0 ) ;
344300
345- node. start ( ) . unwrap ( ) ;
346- assert_eq ! ( node. start( ) , Err ( Error :: AlreadyRunning ) ) ;
347-
348301 node. sync_wallets ( ) . unwrap ( ) ;
349302 assert_eq ! ( node. spendable_onchain_balance_sats( ) . unwrap( ) , expected_amount. to_sat( ) ) ;
350303
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) ;
352305 assert ! ( std:: path:: Path :: new( & log_file_symlink) . is_symlink( ) ) ;
353306
354307 node. stop ( ) . unwrap ( ) ;
@@ -361,66 +314,9 @@ fn start_stop_reinit() {
361314 assert_eq ! ( node. stop( ) , Err ( Error :: NotRunning ) ) ;
362315 drop ( node) ;
363316
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) ;
420318 assert_eq ! ( reinitialized_node. node_id( ) , expected_node_id) ;
421319
422- reinitialized_node. start ( ) . unwrap ( ) ;
423-
424320 assert_eq ! (
425321 reinitialized_node. spendable_onchain_balance_sats( ) . unwrap( ) ,
426322 expected_amount. to_sat( )
@@ -438,20 +334,9 @@ fn start_stop_reinit_fs_store() {
438334#[ test]
439335fn onchain_spend_receive ( ) {
440336 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 ) ;
442338
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 ( ) ;
448339 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 ( ) ;
455340 let addr_b = node_b. new_onchain_address ( ) . unwrap ( ) ;
456341
457342 premine_and_distribute_funds (
@@ -494,13 +379,8 @@ fn onchain_spend_receive() {
494379#[ test]
495380fn sign_verify_msg ( ) {
496381 let ( _bitcoind, electrsd) = setup_bitcoind_and_electrsd ( ) ;
497- let esplora_url = format ! ( "http://{}" , electrsd. esplora_url. as_ref( ) . unwrap( ) ) ;
498382 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) ;
504384
505385 // Tests arbitrary message signing and later verification
506386 let msg = "OK computer" . as_bytes ( ) ;
0 commit comments