mirror of
https://github.com/ElementsProject/lightning.git
synced 2025-02-22 06:41:44 +01:00
test: test case where we can't afford fees.
In particular, make sure B can just afford it, then have the A add a HTLC which means B can no longer afford the fees, and A should cover it. We do this by modifying the previous overlapping-fail test, but we need to have B offer it the htlc before A does: racy in the normal autocommit case. So we do a manual commit here, always. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
This commit is contained in:
parent
f8fa8c8dff
commit
2804a4de7a
1 changed files with 7 additions and 5 deletions
|
@ -801,16 +801,18 @@ check_status $A_AMOUNT $A_FEE "" $B_AMOUNT $B_FEE ""
|
|||
SECRET2=1de08917a61cb2b62ed5937d38577f6a7bfe59c176781c6d8128018e8b5ccdfe
|
||||
RHASH2=`lcli1 dev-rhash $SECRET2 | sed 's/.*"\([0-9a-f]*\)".*/\1/'`
|
||||
|
||||
# This means B will *just* afford it.
|
||||
HTLC_AMOUNT=$(($B_AMOUNT - $EXTRA_FEE))
|
||||
HTLCID2=`lcli1 newhtlc $ID2 $HTLC_AMOUNT $EXPIRY $RHASH2 | extract_id`
|
||||
# This means B will *just* afford it (but can't cover increased fees)
|
||||
HTLC_AMOUNT=$(($B_AMOUNT - $EXTRA_FEE / 2))
|
||||
HTLCID=`lcli2 newhtlc $ID1 $HTLC_AMOUNT $EXPIRY $RHASH | extract_id`
|
||||
# Make sure that's committed, in case lcli1 restarts.
|
||||
lcli2 commit $ID1 >/dev/null || true
|
||||
|
||||
HTLCID2=`lcli1 newhtlc $ID2 $HTLC_AMOUNT $EXPIRY $RHASH2 | extract_id`
|
||||
[ ! -n "$MANUALCOMMIT" ] || lcli1 commit $ID2
|
||||
[ ! -n "$MANUALCOMMIT" ] || lcli2 commit $ID1
|
||||
[ ! -n "$MANUALCOMMIT" ] || lcli1 commit $ID2
|
||||
|
||||
check_status $(($A_AMOUNT - $HTLC_AMOUNT - $EXTRA_FEE)) $(($A_FEE + $EXTRA_FEE)) "{ msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH2 , state : SENT_ADD_ACK_REVOCATION } " 0 $(($B_FEE + $EXTRA_FEE)) "{ msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : RCVD_ADD_ACK_REVOCATION } "
|
||||
# A covers the extra part of the fee.
|
||||
check_status $(($A_AMOUNT - $HTLC_AMOUNT - $EXTRA_FEE - $EXTRA_FEE / 2)) $(($A_FEE + $EXTRA_FEE + $EXTRA_FEE / 2)) "{ msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH2 , state : SENT_ADD_ACK_REVOCATION } " 0 $(($B_FEE + $EXTRA_FEE / 2)) "{ msatoshis : $HTLC_AMOUNT, expiry : { block : $EXPIRY }, rhash : $RHASH , state : RCVD_ADD_ACK_REVOCATION } "
|
||||
|
||||
# Fail both, to reset.
|
||||
lcli1 failhtlc $ID2 $HTLCID 830
|
||||
|
|
Loading…
Add table
Reference in a new issue