diff --git a/web/src/integrationTest/java/de/cotto/lndmanagej/controller/ChannelControllerIT.java b/web/src/integrationTest/java/de/cotto/lndmanagej/controller/ChannelControllerIT.java index 5f92dbcd..7b8aca68 100644 --- a/web/src/integrationTest/java/de/cotto/lndmanagej/controller/ChannelControllerIT.java +++ b/web/src/integrationTest/java/de/cotto/lndmanagej/controller/ChannelControllerIT.java @@ -74,6 +74,7 @@ class ChannelControllerIT { .andExpect(jsonPath("$.channelPoint", is(CHANNEL_POINT.toString()))) .andExpect(jsonPath("$.remotePubkey", is(PUBKEY_2.toString()))) .andExpect(jsonPath("$.capacity", is(String.valueOf(CAPACITY.satoshis())))) + .andExpect(jsonPath("$.openInitiator", is("REMOTE"))) .andExpect(jsonPath("$.openHeight", is(CHANNEL_ID_2.getBlockHeight()))) .andExpect(jsonPath("$.status.private", is(false))) .andExpect(jsonPath("$.status.active", is(false))) @@ -103,6 +104,7 @@ class ChannelControllerIT { .andExpect(jsonPath("$.remotePubkey", is(PUBKEY_2.toString()))) .andExpect(jsonPath("$.remoteAlias", is(ALIAS_2))) .andExpect(jsonPath("$.capacity", is(String.valueOf(CAPACITY.satoshis())))) + .andExpect(jsonPath("$.openInitiator", is("LOCAL"))) .andExpect(jsonPath("$.openHeight", is(CHANNEL_ID.getBlockHeight()))) .andExpect(jsonPath("$.status.private", is(true))) .andExpect(jsonPath("$.status.active", is(true))) diff --git a/web/src/main/java/de/cotto/lndmanagej/controller/dto/ChannelDetailsDto.java b/web/src/main/java/de/cotto/lndmanagej/controller/dto/ChannelDetailsDto.java index e3267b90..e7f2600e 100644 --- a/web/src/main/java/de/cotto/lndmanagej/controller/dto/ChannelDetailsDto.java +++ b/web/src/main/java/de/cotto/lndmanagej/controller/dto/ChannelDetailsDto.java @@ -3,6 +3,7 @@ package de.cotto.lndmanagej.controller.dto; import de.cotto.lndmanagej.model.BalanceInformation; import de.cotto.lndmanagej.model.ChannelPoint; import de.cotto.lndmanagej.model.LocalChannel; +import de.cotto.lndmanagej.model.OpenInitiator; import de.cotto.lndmanagej.model.Pubkey; public record ChannelDetailsDto( @@ -12,6 +13,7 @@ public record ChannelDetailsDto( ChannelPoint channelPoint, int openHeight, Pubkey remotePubkey, + OpenInitiator openInitiator, String remoteAlias, String capacity, ChannelStatusDto status, @@ -33,6 +35,7 @@ public record ChannelDetailsDto( channelDto.channelPoint(), channelDto.openHeight(), channelDto.remotePubkey(), + channelDto.openInitiator(), remoteAlias, channelDto.capacity(), channelDto.status(), diff --git a/web/src/main/java/de/cotto/lndmanagej/controller/dto/ChannelDto.java b/web/src/main/java/de/cotto/lndmanagej/controller/dto/ChannelDto.java index 021820ac..79e63165 100644 --- a/web/src/main/java/de/cotto/lndmanagej/controller/dto/ChannelDto.java +++ b/web/src/main/java/de/cotto/lndmanagej/controller/dto/ChannelDto.java @@ -2,6 +2,7 @@ package de.cotto.lndmanagej.controller.dto; import de.cotto.lndmanagej.model.ChannelPoint; import de.cotto.lndmanagej.model.LocalChannel; +import de.cotto.lndmanagej.model.OpenInitiator; import de.cotto.lndmanagej.model.Pubkey; public record ChannelDto( @@ -12,7 +13,8 @@ public record ChannelDto( int openHeight, Pubkey remotePubkey, String capacity, - ChannelStatusDto status + ChannelStatusDto status, + OpenInitiator openInitiator ) { public ChannelDto(LocalChannel localChannel) { this( @@ -23,7 +25,8 @@ public record ChannelDto( localChannel.getId().getBlockHeight(), localChannel.getRemotePubkey(), String.valueOf(localChannel.getCapacity().satoshis()), - ChannelStatusDto.createFrom(localChannel.getStatus()) + ChannelStatusDto.createFrom(localChannel.getStatus()), + localChannel.getOpenInitiator() ); } } diff --git a/web/src/test/java/de/cotto/lndmanagej/controller/dto/ChannelDetailsDtoTest.java b/web/src/test/java/de/cotto/lndmanagej/controller/dto/ChannelDetailsDtoTest.java index 8f421d04..db1b4d96 100644 --- a/web/src/test/java/de/cotto/lndmanagej/controller/dto/ChannelDetailsDtoTest.java +++ b/web/src/test/java/de/cotto/lndmanagej/controller/dto/ChannelDetailsDtoTest.java @@ -2,6 +2,7 @@ package de.cotto.lndmanagej.controller.dto; import de.cotto.lndmanagej.model.ChannelStatus; import de.cotto.lndmanagej.model.Coins; +import de.cotto.lndmanagej.model.OpenInitiator; import org.junit.jupiter.api.Test; import static de.cotto.lndmanagej.model.BalanceInformationFixtures.BALANCE_INFORMATION; @@ -66,6 +67,11 @@ class ChannelDetailsDtoTest { assertThat(CHANNEL_DETAILS_DTO.capacity()).isEqualTo(String.valueOf(CAPACITY.satoshis())); } + @Test + void openInitiator() { + assertThat(CHANNEL_DETAILS_DTO.openInitiator()).isEqualTo(OpenInitiator.LOCAL); + } + @Test void status() { ChannelDetailsDto dto = new ChannelDetailsDto( diff --git a/web/src/test/java/de/cotto/lndmanagej/controller/dto/ChannelDtoTest.java b/web/src/test/java/de/cotto/lndmanagej/controller/dto/ChannelDtoTest.java index 6e2a4dbc..804f77a9 100644 --- a/web/src/test/java/de/cotto/lndmanagej/controller/dto/ChannelDtoTest.java +++ b/web/src/test/java/de/cotto/lndmanagej/controller/dto/ChannelDtoTest.java @@ -1,6 +1,7 @@ package de.cotto.lndmanagej.controller.dto; import de.cotto.lndmanagej.model.ChannelStatus; +import de.cotto.lndmanagej.model.OpenInitiator; import org.junit.jupiter.api.Test; import static de.cotto.lndmanagej.model.ChannelFixtures.CAPACITY; @@ -50,6 +51,11 @@ class ChannelDtoTest { assertThat(CHANNEL_DTO.capacity()).isEqualTo(String.valueOf(CAPACITY.satoshis())); } + @Test + void openInitiator() { + assertThat(CHANNEL_DTO.openInitiator()).isEqualTo(OpenInitiator.LOCAL); + } + @Test void status() { ChannelDto dto = new ChannelDto(LOCAL_OPEN_CHANNEL);