-
Notifications
You must be signed in to change notification settings - Fork 103
Multi rfq receive itest #1050
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Multi rfq receive itest #1050
Conversation
c736333
to
5e505e2
Compare
21e38f3
to
4225d65
Compare
5e505e2
to
20835ca
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks pretty good. Will take another look after it's been rebased, there were a couple of changes to the master branch in the meantime.
20835ca
to
1f40360
Compare
charlie, dave, erin, fabia, yara *HarnessNode, charlieTap, daveTap, | ||
erinTap, fabiaTap, yaraTap, universeTap *tapClient, | ||
mintedAsset *taprpc.Asset, assetSendAmount, fundingAmount uint64, | ||
pushSat int64) (*lnrpc.ChannelPoint, *lnrpc.ChannelPoint, | ||
*lnrpc.ChannelPoint) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is a lot of arguments. how about using this sort of helper structs to clean this up:
type nodeComponents struct {
Lnd *HarnessNode
Tapd: *tapClient
}
type testFramework struct {
charlie nodeComponents
dave nodeComponents
erin nodeComponents
fabia nodeComponents
yara nodeComponents
universeTap *tapClient
}
and then the rest of the args
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice, LGTM pending the dependent tapd
PR.
Description
Itest for lightninglabs/taproot-assets#1457
We add a new itest that aims to focus on the multi-rfq aspect of custom channels. It uses a new network topology which allows for multiple asset channel peers and has the following topology
The current itest only focuses on the Multi-Rfq feature of
AddInvoice
onFabia
, but it will be re-used to test the Multi-Rfq feature ofSendPayment
when that is introduced.Within the added itest, Fabia creates a bolt11 invoice with multiple hop hints, which represent the multiple RFQ quotes that get encoded as hop hints in the invoice. This is crucial for the payment to succeed, as the payer has to split the payment and reach
Fabia
via multiple asset channels.Based on
group-key-support
branch