Skip to content

Commit 6f44cbc

Browse files
committed
test: integration tests for premium
This commit is to modify and add integration tests for the addition of premium.
1 parent 1ec38e5 commit 6f44cbc

13 files changed

+1710
-1083
lines changed

peerswaprpc/server.go

+9-6
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,7 @@ func (p *PeerswapServer) SwapOut(ctx context.Context, request *SwapOutRequest) (
144144
return nil, fmt.Errorf("peer is not connected")
145145
}
146146

147-
swapOut, err := p.swaps.SwapOut(peerId, request.Asset, shortId.String(), pk, request.SwapAmount)
147+
swapOut, err := p.swaps.SwapOut(peerId, request.Asset, shortId.String(), pk, request.SwapAmount, request.GetPremiumLimit())
148148
if err != nil {
149149
return nil, err
150150
}
@@ -268,7 +268,7 @@ func (p *PeerswapServer) SwapIn(ctx context.Context, request *SwapInRequest) (*S
268268
return nil, fmt.Errorf("peer is not connected")
269269
}
270270

271-
swapIn, err := p.swaps.SwapIn(peerId, request.Asset, shortId.String(), pk, request.SwapAmount)
271+
swapIn, err := p.swaps.SwapIn(peerId, request.Asset, shortId.String(), pk, request.SwapAmount, request.GetPremiumLimit())
272272
if err != nil {
273273
return nil, err
274274
}
@@ -376,10 +376,12 @@ func (p *PeerswapServer) ListPeers(ctx context.Context, request *ListPeersReques
376376
}
377377

378378
peerSwapPeers = append(peerSwapPeers, &PeerSwapPeer{
379-
NodeId: v.PubKey,
380-
SwapsAllowed: poll.PeerAllowed,
381-
SupportedAssets: poll.Assets,
382-
Channels: getPeerSwapChannels(v.PubKey, channelRes.Channels),
379+
NodeId: v.PubKey,
380+
SwapsAllowed: poll.PeerAllowed,
381+
SwapInPremiumRatePpm: poll.SwapInPremiumRatePPM,
382+
SwapOutPremiumRatePpm: poll.SwapOutPremiumRatePPM,
383+
SupportedAssets: poll.Assets,
384+
Channels: getPeerSwapChannels(v.PubKey, channelRes.Channels),
383385
AsSender: &SwapStats{
384386
SwapsOut: SenderSwapsOut,
385387
SwapsIn: SenderSwapsIn,
@@ -571,6 +573,7 @@ func PrettyprintFromServiceSwap(swap *swap.SwapStateMachine) *PrettyPrintSwap {
571573
ClaimTxId: swap.Data.ClaimTxId,
572574
CancelMessage: swap.Data.GetCancelMessage(),
573575
LndChanId: lnd_chan_id,
576+
PremiumAmount: swap.Data.GetPremium(),
574577
}
575578
}
576579

policy/policy_test.go

+24-18
Original file line numberDiff line numberDiff line change
@@ -84,12 +84,14 @@ func Test_Reload(t *testing.T) {
8484
policy, err := create(strings.NewReader(conf))
8585
assert.NoError(t, err)
8686
assert.EqualValues(t, &Policy{
87-
ReserveOnchainMsat: defaultReserveOnchainMsat,
88-
PeerAllowlist: []string{peer1, peer2},
89-
SuspiciousPeerList: defaultSuspiciousPeerList,
90-
AcceptAllPeers: accept,
91-
MinSwapAmountMsat: defaultMinSwapAmountMsat,
92-
AllowNewSwaps: defaultAllowNewSwaps,
87+
ReserveOnchainMsat: defaultReserveOnchainMsat,
88+
PeerAllowlist: []string{peer1, peer2},
89+
SuspiciousPeerList: defaultSuspiciousPeerList,
90+
AcceptAllPeers: accept,
91+
MinSwapAmountMsat: defaultMinSwapAmountMsat,
92+
AllowNewSwaps: defaultAllowNewSwaps,
93+
SwapInPremiumRatePPM: defaultSwapInPremiumRatePPM,
94+
SwapOutPremiumRatePPM: defaultSwapOutPremiumRatePPM,
9395
}, policy)
9496

9597
newPeer := "new_peer"
@@ -98,12 +100,14 @@ func Test_Reload(t *testing.T) {
98100
err = policy.reload(strings.NewReader(newConf))
99101
assert.NoError(t, err)
100102
assert.EqualValues(t, &Policy{
101-
ReserveOnchainMsat: defaultReserveOnchainMsat,
102-
PeerAllowlist: []string{newPeer},
103-
SuspiciousPeerList: []string{newPeer},
104-
AcceptAllPeers: defaultAcceptAllPeers,
105-
MinSwapAmountMsat: defaultMinSwapAmountMsat,
106-
AllowNewSwaps: defaultAllowNewSwaps,
103+
ReserveOnchainMsat: defaultReserveOnchainMsat,
104+
PeerAllowlist: []string{newPeer},
105+
SuspiciousPeerList: []string{newPeer},
106+
AcceptAllPeers: defaultAcceptAllPeers,
107+
MinSwapAmountMsat: defaultMinSwapAmountMsat,
108+
AllowNewSwaps: defaultAllowNewSwaps,
109+
SwapInPremiumRatePPM: defaultSwapInPremiumRatePPM,
110+
SwapOutPremiumRatePPM: defaultSwapOutPremiumRatePPM,
107111
}, policy)
108112
}
109113

@@ -121,12 +125,14 @@ func Test_Reload_NoOverrideOnError(t *testing.T) {
121125
policy, err := create(strings.NewReader(conf))
122126
assert.NoError(t, err)
123127
assert.EqualValues(t, &Policy{
124-
ReserveOnchainMsat: defaultReserveOnchainMsat,
125-
PeerAllowlist: []string{peer1, peer2},
126-
SuspiciousPeerList: defaultSuspiciousPeerList,
127-
AcceptAllPeers: accept,
128-
MinSwapAmountMsat: defaultMinSwapAmountMsat,
129-
AllowNewSwaps: defaultAllowNewSwaps,
128+
ReserveOnchainMsat: defaultReserveOnchainMsat,
129+
PeerAllowlist: []string{peer1, peer2},
130+
SuspiciousPeerList: defaultSuspiciousPeerList,
131+
AcceptAllPeers: accept,
132+
MinSwapAmountMsat: defaultMinSwapAmountMsat,
133+
AllowNewSwaps: defaultAllowNewSwaps,
134+
SwapInPremiumRatePPM: defaultSwapInPremiumRatePPM,
135+
SwapOutPremiumRatePPM: defaultSwapOutPremiumRatePPM,
130136
}, policy)
131137

132138
// copy policy

swap/service_test.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -257,7 +257,7 @@ func TestMessageFromUnexpectedPeer(t *testing.T) {
257257
if err != nil {
258258
t.Fatal(err)
259259
}
260-
aliceSwap, err := aliceSwapService.SwapOut(peer, "btc", channelId, initiator, amount, 0)
260+
aliceSwap, err := aliceSwapService.SwapOut(peer, "btc", channelId, initiator, amount, 1000)
261261
if err != nil {
262262
t.Fatalf(" error swapping oput %v: ", err)
263263
}

swap/swap_in_receiver_test.go

+4-2
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ func Test_SwapInReceiverValid(t *testing.T) {
2525
SwapId: swapId,
2626
Network: "mainnet",
2727
ProtocolVersion: PEERSWAP_PROTOCOL_VERSION,
28+
PremiumLimit: 10000,
2829
})
2930
if err != nil {
3031
t.Fatal(err)
@@ -35,7 +36,7 @@ func Test_SwapInReceiverValid(t *testing.T) {
3536

3637
_, err = swap.SendEvent(Event_OnTxOpenedMessage, &OpeningTxBroadcastedMessage{
3738
SwapId: swap.SwapId,
38-
Payreq: "invoice",
39+
Payreq: "swapin",
3940
TxId: getRandom32ByteHexString(),
4041
ScriptOut: 0,
4142
BlindingKey: "",
@@ -105,6 +106,7 @@ func Test_SwapInReceiverCancel2(t *testing.T) {
105106
SwapId: swapId,
106107
Network: "mainnet",
107108
ProtocolVersion: PEERSWAP_PROTOCOL_VERSION,
109+
PremiumLimit: 10000,
108110
})
109111
if err != nil {
110112
t.Fatal(err)
@@ -115,7 +117,7 @@ func Test_SwapInReceiverCancel2(t *testing.T) {
115117

116118
_, err = swap.SendEvent(Event_OnTxOpenedMessage, &OpeningTxBroadcastedMessage{
117119
SwapId: swap.SwapId,
118-
Payreq: "invoice",
120+
Payreq: "swapin",
119121
TxId: getRandom32ByteHexString(),
120122
ScriptOut: 0,
121123
BlindingKey: "",

swap/swap_out_sender_test.go

+11-4
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ func Test_ValidSwap(t *testing.T) {
5252
Pubkey: takerpubkeyhash,
5353
Network: "mainnet",
5454
ProtocolVersion: PEERSWAP_PROTOCOL_VERSION,
55+
PremiumLimit: 10000,
5556
})
5657
if err != nil {
5758
t.Fatal(err)
@@ -64,8 +65,9 @@ func Test_ValidSwap(t *testing.T) {
6465
assert.NotEqual(t, "", swapFSM.Data.SwapOutRequest.Pubkey)
6566

6667
_, err = swapFSM.SendEvent(Event_OnFeeInvoiceReceived, &SwapOutAgreementMessage{
67-
Payreq: FeeInvoice,
68-
Pubkey: peer,
68+
Payreq: FeeInvoice,
69+
Pubkey: peer,
70+
Premium: 1000,
6971
})
7072
if err != nil {
7173
t.Fatal(err)
@@ -166,6 +168,7 @@ func Test_AbortCsvClaim(t *testing.T) {
166168
Pubkey: takerpubkeyhash,
167169
Network: "mainnet",
168170
ProtocolVersion: PEERSWAP_PROTOCOL_VERSION,
171+
PremiumLimit: 10000,
169172
})
170173
if err != nil {
171174
t.Fatal(err)
@@ -175,8 +178,9 @@ func Test_AbortCsvClaim(t *testing.T) {
175178
assert.NotEqual(t, "", swapFSM.Data.SwapOutRequest.Pubkey)
176179

177180
_, err = swapFSM.SendEvent(Event_OnFeeInvoiceReceived, &SwapOutAgreementMessage{
178-
Payreq: FeeInvoice,
179-
Pubkey: peer,
181+
Payreq: FeeInvoice,
182+
Pubkey: peer,
183+
Premium: 1000,
180184
})
181185
if err != nil {
182186
t.Fatal(err)
@@ -321,6 +325,9 @@ func (d *dummyLightningClient) DecodePayreq(payreq string) (string, uint64, int6
321325
if payreq == "fee" {
322326
return "foo", 100 * 1000, 10, nil
323327
}
328+
if payreq == "swapin" {
329+
return "foo", 100000 * 1000, 10, nil
330+
}
324331
return "foo", (100000 + 1000) * 1000, 10, nil
325332
}
326333

0 commit comments

Comments
 (0)