2525
2626import static org .assertj .core .api .Assertions .assertThat ;
2727
28+ @ StaticMock ({KinesisAsyncClient .class , CloudWatchAsyncClient .class , DynamoDbAsyncClient .class })
2829@ ConstructionMock (KclMessageDrivenChannelAdapter .class )
2930class KclMessageDrivenChannelAdapterParserTest extends ParserTestBase {
3031
@@ -53,7 +54,15 @@ class KclMessageDrivenChannelAdapterParserTest extends ParserTestBase {
5354 private InitialPositionInStreamExtended streamInitialSequence ;
5455
5556 @ Test
56- void testDefaults (MockedConstruction <KclMessageDrivenChannelAdapter > mocked ) {
57+ void testDefaults (MockedConstruction <KclMessageDrivenChannelAdapter > mocked ,
58+ MockedStatic <KinesisAsyncClient > kinesisClientMock ,
59+ MockedStatic <CloudWatchAsyncClient > cloudWatchMock ,
60+ MockedStatic <DynamoDbAsyncClient > dynamoDbMock ) {
61+
62+ kinesisClientMock .when (KinesisAsyncClient ::create ).thenReturn (kinesisClient );
63+ dynamoDbMock .when (DynamoDbAsyncClient ::create ).thenReturn (dynamoDbClient );
64+ cloudWatchMock .when (CloudWatchAsyncClient ::create ).thenReturn (cloudWatchClient );
65+
5766 parse ("""
5867 <int-aws:kcl-message-driven-channel-adapter streams="s"
5968 channel="c"/>
@@ -66,14 +75,13 @@ void testDefaults(MockedConstruction<KclMessageDrivenChannelAdapter> mocked) {
6675 }
6776
6877 void testDefaults (KclMessageDrivenChannelAdapter mock , Context context ) {
69- assertThat (context .arguments ()).singleElement ()
70- .isEqualTo (new String [] {"s" });
78+ verifyConstructorArgs (mock , context );
7179 }
7280
73- @ StaticMock ({CloudWatchAsyncClient .class , DynamoDbAsyncClient .class })
7481 @ Test
7582 void testKinesisClientConfig (MockedConstruction <KclMessageDrivenChannelAdapter > mocked ,
76- MockedStatic <CloudWatchAsyncClient > cloudWatchMock , MockedStatic <DynamoDbAsyncClient > dynamoDbMock ) {
83+ MockedStatic <CloudWatchAsyncClient > cloudWatchMock ,
84+ MockedStatic <DynamoDbAsyncClient > dynamoDbMock ) {
7785 registerBean ("kc" , KinesisAsyncClient .class , kinesisClient );
7886
7987 dynamoDbMock .when (DynamoDbAsyncClient ::create ).thenReturn (dynamoDbClient );
@@ -92,8 +100,7 @@ void testKinesisClientConfig(MockedConstruction<KclMessageDrivenChannelAdapter>
92100 }
93101
94102 void testKinesisClientConfig (KclMessageDrivenChannelAdapter mock , Context context ) {
95- assertThat (context .arguments ()).asInstanceOf (InstanceOfAssertFactories .LIST )
96- .contains (kinesisClient , cloudWatchClient , dynamoDbClient );
103+ verifyConstructorArgs (mock , context );
97104 }
98105
99106 @ Test
@@ -160,8 +167,12 @@ void testAdapter() {
160167 verify (adapter ).setWorkerId ("wid" );
161168 }
162169
163- void testParser (KclMessageDrivenChannelAdapter mock , Context context ) {
170+ void testAdapter (KclMessageDrivenChannelAdapter mock , Context context ) {
171+ verifyConstructorArgs (mock , context );
172+ }
173+
174+ void verifyConstructorArgs (KclMessageDrivenChannelAdapter mock , Context context ) {
164175 assertThat (context .arguments ()).asInstanceOf (InstanceOfAssertFactories .LIST )
165- .contains ( new String [] {"s" }, kinesisClient , cloudWatchClient , dynamoDbClient );
176+ .containsExactly ( kinesisClient , cloudWatchClient , dynamoDbClient , new String [] {"s" });
166177 }
167178}
0 commit comments