add rebalance amounts to channel/node details

This commit is contained in:
Carsten Otto
2021-12-15 13:38:42 +01:00
parent dede9ea6db
commit 6e813b7852
9 changed files with 101 additions and 17 deletions

View File

@@ -17,6 +17,7 @@ import de.cotto.lndmanagej.service.NodeService;
import de.cotto.lndmanagej.service.OffChainCostService;
import de.cotto.lndmanagej.service.OnChainCostService;
import de.cotto.lndmanagej.service.PolicyService;
import de.cotto.lndmanagej.service.RebalanceService;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
@@ -73,12 +74,17 @@ class ChannelControllerTest {
@Mock
private FeeService feeService;
@Mock
private RebalanceService rebalanceService;
@BeforeEach
void setUp() {
lenient().when(onChainCostService.getOnChainCostsForChannelId(CHANNEL_ID)).thenReturn(ON_CHAIN_COSTS);
lenient().when(offChainCostService.getOffChainCostsForChannel(CHANNEL_ID)).thenReturn(OFF_CHAIN_COSTS);
lenient().when(policyService.getPolicies(CHANNEL_ID)).thenReturn(POLICIES);
lenient().when(feeService.getFeeReportForChannel(CHANNEL_ID)).thenReturn(FEE_REPORT);
lenient().when(rebalanceService.getRebalanceAmountFromChannel(CHANNEL_ID)).thenReturn(Coins.NONE);
lenient().when(rebalanceService.getRebalanceAmountToChannel(CHANNEL_ID)).thenReturn(Coins.NONE);
}
@Test
@@ -117,8 +123,12 @@ class ChannelControllerTest {
OFF_CHAIN_COSTS,
FEE_CONFIGURATION_DTO,
ClosedChannelDetailsDto.UNKNOWN,
FEE_REPORT
FEE_REPORT,
Coins.ofMilliSatoshis(1),
Coins.ofMilliSatoshis(2)
);
when(rebalanceService.getRebalanceAmountFromChannel(CHANNEL_ID)).thenReturn(Coins.ofMilliSatoshis(1));
when(rebalanceService.getRebalanceAmountToChannel(CHANNEL_ID)).thenReturn(Coins.ofMilliSatoshis(2));
when(nodeService.getAlias(PUBKEY_2)).thenReturn(ALIAS_2);
when(channelService.getLocalChannel(CHANNEL_ID)).thenReturn(Optional.of(LOCAL_OPEN_CHANNEL));
when(balanceService.getBalanceInformation(CHANNEL_ID))
@@ -137,7 +147,9 @@ class ChannelControllerTest {
OFF_CHAIN_COSTS,
FEE_CONFIGURATION_DTO,
ClosedChannelDetailsDto.UNKNOWN,
FEE_REPORT
FEE_REPORT,
Coins.NONE,
Coins.NONE
);
when(nodeService.getAlias(PUBKEY_2)).thenReturn(ALIAS_2);
when(channelService.getLocalChannel(CHANNEL_ID)).thenReturn(Optional.of(LOCAL_OPEN_CHANNEL_PRIVATE));
@@ -215,7 +227,9 @@ class ChannelControllerTest {
OFF_CHAIN_COSTS,
PoliciesDto.EMPTY,
ClosedChannelDetailsDto.createFromModel(channel),
FEE_REPORT
FEE_REPORT,
Coins.NONE,
Coins.NONE
);
}
}

View File

@@ -19,6 +19,7 @@ import de.cotto.lndmanagej.service.FeeService;
import de.cotto.lndmanagej.service.NodeService;
import de.cotto.lndmanagej.service.OffChainCostService;
import de.cotto.lndmanagej.service.OnChainCostService;
import de.cotto.lndmanagej.service.RebalanceService;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.InjectMocks;
@@ -75,6 +76,9 @@ class NodeControllerTest {
@Mock
private FeeService feeService;
@Mock
private RebalanceService rebalanceService;
@Test
void getAlias() {
when(nodeService.getAlias(PUBKEY_2)).thenReturn(ALIAS_2);
@@ -88,6 +92,8 @@ class NodeControllerTest {
when(offChainCostService.getOffChainCostsForPeer(any())).thenReturn(OffChainCosts.NONE);
when(balanceService.getBalanceInformationForPeer(any(Pubkey.class))).thenReturn(BalanceInformation.EMPTY);
when(feeService.getFeeReportForPeer(any())).thenReturn(new FeeReport(Coins.NONE, Coins.NONE));
when(rebalanceService.getRebalanceAmountFromPeer(PUBKEY_2)).thenReturn(Coins.NONE);
when(rebalanceService.getRebalanceAmountToPeer(PUBKEY_2)).thenReturn(Coins.NONE);
NodeDetailsDto expectedDetails = new NodeDetailsDto(
PUBKEY_2,
ALIAS_2,
@@ -99,7 +105,9 @@ class NodeControllerTest {
OffChainCostsDto.createFromModel(OffChainCosts.NONE),
BalanceInformationDto.createFromModel(BalanceInformation.EMPTY),
true,
new FeeReportDto("0", "0")
new FeeReportDto("0", "0"),
"0",
"0"
);
when(nodeService.getNode(PUBKEY_2)).thenReturn(new Node(PUBKEY_2, ALIAS_2, 0, true));
@@ -125,6 +133,8 @@ class NodeControllerTest {
when(onChainCostService.getOnChainCostsForPeer(PUBKEY_2)).thenReturn(onChainCosts);
when(offChainCostService.getOffChainCostsForPeer(PUBKEY_2)).thenReturn(OFF_CHAIN_COSTS);
when(balanceService.getBalanceInformationForPeer(PUBKEY_2)).thenReturn(BALANCE_INFORMATION);
when(rebalanceService.getRebalanceAmountFromPeer(PUBKEY_2)).thenReturn(Coins.ofMilliSatoshis(111));
when(rebalanceService.getRebalanceAmountToPeer(PUBKEY_2)).thenReturn(Coins.ofMilliSatoshis(222));
when(feeService.getFeeReportForPeer(PUBKEY_2)).thenReturn(FEE_REPORT);
NodeDetailsDto expectedDetails = new NodeDetailsDto(
PUBKEY_2,
@@ -137,7 +147,9 @@ class NodeControllerTest {
OffChainCostsDto.createFromModel(OFF_CHAIN_COSTS),
BalanceInformationDto.createFromModel(BALANCE_INFORMATION),
false,
new FeeReportDto("1234", "567")
new FeeReportDto("1234", "567"),
"111",
"222"
);
assertThat(nodeController.getDetails(PUBKEY_2)).isEqualTo(expectedDetails);

View File

@@ -33,7 +33,9 @@ class ChannelDetailsDtoTest {
OFF_CHAIN_COSTS,
PoliciesDto.EMPTY,
CLOSE_DETAILS,
FEE_REPORT
FEE_REPORT,
Coins.ofMilliSatoshis(123),
Coins.ofMilliSatoshis(456)
);
@Test
@@ -91,7 +93,9 @@ class ChannelDetailsDtoTest {
OFF_CHAIN_COSTS,
PoliciesDto.EMPTY,
CLOSE_DETAILS,
FEE_REPORT
FEE_REPORT,
Coins.NONE,
Coins.NONE
);
ChannelStatusDto channelStatusDto =
ChannelStatusDto.createFromModel(new ChannelStatus(false, true, false, OPEN));
@@ -122,4 +126,14 @@ class ChannelDetailsDtoTest {
void offChainCosts() {
assertThat(CHANNEL_DETAILS_DTO.offChainCosts()).isEqualTo(OffChainCostsDto.createFromModel(OFF_CHAIN_COSTS));
}
@Test
void rebalanceSourceAmount() {
assertThat(CHANNEL_DETAILS_DTO.rebalanceSourceAmount()).isEqualTo("123");
}
@Test
void rebalanceTargetAmount() {
assertThat(CHANNEL_DETAILS_DTO.rebalanceTargetAmount()).isEqualTo("456");
}
}