2
2
#![ allow( dead_code) ]
3
3
4
4
use ldk_node:: io:: sqlite_store:: SqliteStore ;
5
- use ldk_node:: payment:: { PaymentDirection , PaymentStatus } ;
5
+ use ldk_node:: payment:: { PaymentDirection , PaymentKind , PaymentStatus } ;
6
6
use ldk_node:: { Builder , Config , Event , LogLevel , Node , NodeError } ;
7
7
8
8
use lightning:: ln:: msgs:: SocketAddress ;
@@ -447,9 +447,11 @@ pub(crate) fn do_channel_full_cycle<E: ElectrumApi>(
447
447
assert_eq ! ( node_a. payment( & payment_id) . unwrap( ) . status, PaymentStatus :: Succeeded ) ;
448
448
assert_eq ! ( node_a. payment( & payment_id) . unwrap( ) . direction, PaymentDirection :: Outbound ) ;
449
449
assert_eq ! ( node_a. payment( & payment_id) . unwrap( ) . amount_msat, Some ( invoice_amount_1_msat) ) ;
450
+ assert ! ( matches!( node_a. payment( & payment_id) . unwrap( ) . kind, PaymentKind :: Bolt11 { .. } ) ) ;
450
451
assert_eq ! ( node_b. payment( & payment_id) . unwrap( ) . status, PaymentStatus :: Succeeded ) ;
451
452
assert_eq ! ( node_b. payment( & payment_id) . unwrap( ) . direction, PaymentDirection :: Inbound ) ;
452
453
assert_eq ! ( node_b. payment( & payment_id) . unwrap( ) . amount_msat, Some ( invoice_amount_1_msat) ) ;
454
+ assert ! ( matches!( node_b. payment( & payment_id) . unwrap( ) . kind, PaymentKind :: Bolt11 { .. } ) ) ;
453
455
454
456
// Assert we fail duplicate outbound payments and check the status hasn't changed.
455
457
assert_eq ! ( Err ( NodeError :: DuplicatePayment ) , node_a. bolt11_payment( ) . send( & invoice) ) ;
@@ -492,9 +494,11 @@ pub(crate) fn do_channel_full_cycle<E: ElectrumApi>(
492
494
assert_eq ! ( node_a. payment( & payment_id) . unwrap( ) . status, PaymentStatus :: Succeeded ) ;
493
495
assert_eq ! ( node_a. payment( & payment_id) . unwrap( ) . direction, PaymentDirection :: Outbound ) ;
494
496
assert_eq ! ( node_a. payment( & payment_id) . unwrap( ) . amount_msat, Some ( overpaid_amount_msat) ) ;
497
+ assert ! ( matches!( node_a. payment( & payment_id) . unwrap( ) . kind, PaymentKind :: Bolt11 { .. } ) ) ;
495
498
assert_eq ! ( node_b. payment( & payment_id) . unwrap( ) . status, PaymentStatus :: Succeeded ) ;
496
499
assert_eq ! ( node_b. payment( & payment_id) . unwrap( ) . direction, PaymentDirection :: Inbound ) ;
497
500
assert_eq ! ( node_b. payment( & payment_id) . unwrap( ) . amount_msat, Some ( overpaid_amount_msat) ) ;
501
+ assert ! ( matches!( node_b. payment( & payment_id) . unwrap( ) . kind, PaymentKind :: Bolt11 { .. } ) ) ;
498
502
499
503
// Test "zero-amount" invoice payment
500
504
println ! ( "\n B receive_variable_amount_payment" ) ;
@@ -526,9 +530,11 @@ pub(crate) fn do_channel_full_cycle<E: ElectrumApi>(
526
530
assert_eq ! ( node_a. payment( & payment_id) . unwrap( ) . status, PaymentStatus :: Succeeded ) ;
527
531
assert_eq ! ( node_a. payment( & payment_id) . unwrap( ) . direction, PaymentDirection :: Outbound ) ;
528
532
assert_eq ! ( node_a. payment( & payment_id) . unwrap( ) . amount_msat, Some ( determined_amount_msat) ) ;
533
+ assert ! ( matches!( node_a. payment( & payment_id) . unwrap( ) . kind, PaymentKind :: Bolt11 { .. } ) ) ;
529
534
assert_eq ! ( node_b. payment( & payment_id) . unwrap( ) . status, PaymentStatus :: Succeeded ) ;
530
535
assert_eq ! ( node_b. payment( & payment_id) . unwrap( ) . direction, PaymentDirection :: Inbound ) ;
531
536
assert_eq ! ( node_b. payment( & payment_id) . unwrap( ) . amount_msat, Some ( determined_amount_msat) ) ;
537
+ assert ! ( matches!( node_b. payment( & payment_id) . unwrap( ) . kind, PaymentKind :: Bolt11 { .. } ) ) ;
532
538
533
539
// Test spontaneous/keysend payments
534
540
println ! ( "\n A send_spontaneous_payment" ) ;
@@ -550,9 +556,19 @@ pub(crate) fn do_channel_full_cycle<E: ElectrumApi>(
550
556
assert_eq ! ( node_a. payment( & keysend_payment_id) . unwrap( ) . status, PaymentStatus :: Succeeded ) ;
551
557
assert_eq ! ( node_a. payment( & keysend_payment_id) . unwrap( ) . direction, PaymentDirection :: Outbound ) ;
552
558
assert_eq ! ( node_a. payment( & keysend_payment_id) . unwrap( ) . amount_msat, Some ( keysend_amount_msat) ) ;
559
+ assert ! ( matches!(
560
+ node_a. payment( & keysend_payment_id) . unwrap( ) . kind,
561
+ PaymentKind :: Spontaneous { .. }
562
+ ) ) ;
553
563
assert_eq ! ( node_b. payment( & keysend_payment_id) . unwrap( ) . status, PaymentStatus :: Succeeded ) ;
554
564
assert_eq ! ( node_b. payment( & keysend_payment_id) . unwrap( ) . direction, PaymentDirection :: Inbound ) ;
555
565
assert_eq ! ( node_b. payment( & keysend_payment_id) . unwrap( ) . amount_msat, Some ( keysend_amount_msat) ) ;
566
+ assert ! ( matches!(
567
+ node_b. payment( & keysend_payment_id) . unwrap( ) . kind,
568
+ PaymentKind :: Spontaneous { .. }
569
+ ) ) ;
570
+ assert_eq ! ( node_a. list_payments( ) . len( ) , 4 ) ;
571
+ assert_eq ! ( node_b. list_payments( ) . len( ) , 5 ) ;
556
572
557
573
println ! ( "\n B close_channel" ) ;
558
574
node_b. close_channel ( & user_channel_id, node_a. node_id ( ) ) . unwrap ( ) ;
0 commit comments