pay payment requests via pickhardt payments

This commit is contained in:
Carsten Otto
2022-05-04 20:04:17 +02:00
parent 168ee15e5d
commit d1567f45d8
12 changed files with 436 additions and 2 deletions

View File

@@ -2,6 +2,7 @@ package de.cotto.lndmanagej.controller;
import de.cotto.lndmanagej.controller.dto.MultiPathPaymentDto;
import de.cotto.lndmanagej.model.Coins;
import de.cotto.lndmanagej.pickhardtpayments.MultiPathPaymentSender;
import de.cotto.lndmanagej.pickhardtpayments.MultiPathPaymentSplitter;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
@@ -19,12 +20,32 @@ import static org.mockito.Mockito.when;
@ExtendWith(MockitoExtension.class)
class PickhardtPaymentsControllerTest {
private static final String PAYMENT_REQUEST = "xxx";
@InjectMocks
private PickhardtPaymentsController controller;
@Mock
private MultiPathPaymentSplitter multiPathPaymentSplitter;
@Mock
private MultiPathPaymentSender multiPathPaymentSender;
@Test
void payPaymentRequest() {
when(multiPathPaymentSender.payPaymentRequest(PAYMENT_REQUEST, DEFAULT_FEE_RATE_WEIGHT))
.thenReturn(MULTI_PATH_PAYMENT);
assertThat(controller.payPaymentRequest(PAYMENT_REQUEST))
.isEqualTo(MultiPathPaymentDto.fromModel(MULTI_PATH_PAYMENT));
}
@Test
void payPaymentRequest_with_fee_rate_weight() {
when(multiPathPaymentSender.payPaymentRequest(PAYMENT_REQUEST, 456))
.thenReturn(MULTI_PATH_PAYMENT);
assertThat(controller.payPaymentRequest(PAYMENT_REQUEST, 456))
.isEqualTo(MultiPathPaymentDto.fromModel(MULTI_PATH_PAYMENT));
}
@Test
void sendTo() {
when(multiPathPaymentSplitter.getMultiPathPaymentTo(PUBKEY, Coins.ofSatoshis(456), DEFAULT_FEE_RATE_WEIGHT))