Skip to content

Commit 3e2a510

Browse files
committed
inline extension functions added
1 parent 465d333 commit 3e2a510

File tree

2 files changed

+30
-22
lines changed

2 files changed

+30
-22
lines changed

kotlin/src/test/kotlin/org/axonframework/extensions/kotlin/QueryGatewayExtensionsTest.kt

Lines changed: 15 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,6 @@ internal class QueryGatewayExtensionsTest {
4848
private val streamOptionalReturnValue = Stream.of(Optional.of("Value"))
4949
private val subscriptionQueryResult = ExampleSubscriptionQueryResult()
5050

51-
5251
@BeforeTest
5352
fun before() {
5453
every { subjectGateway.query(exampleQuery, matchInstanceResponseType<String>()) } returns instanceReturnValue
@@ -63,13 +62,13 @@ internal class QueryGatewayExtensionsTest {
6362
every { subjectGateway.scatterGather(queryName, exampleQuery, matchInstanceResponseType<String>(), timeout, timeUnit) } returns streamInstanceReturnValue
6463
every { subjectGateway.scatterGather(queryName, exampleQuery, matchMultipleInstancesResponseType<String>(), timeout, timeUnit) } returns streamMultipleReturnValue
6564
every { subjectGateway.scatterGather(queryName, exampleQuery, matchOptionalResponseType<String>(), timeout, timeUnit) } returns streamOptionalReturnValue
66-
every { subjectGateway.subscriptionQuery(exampleQuery, matchInstanceResponseType<String>(), matchInstanceResponseType<UpdateType>()) } returns subscriptionQueryResult
65+
every { subjectGateway.subscriptionQuery(exampleQuery, matchInstanceResponseType<InitialResponseType>(), matchInstanceResponseType<UpdateResponseType>()) } returns subscriptionQueryResult
6766
every {
6867
subjectGateway.subscriptionQuery(
6968
queryName,
7069
exampleQuery,
71-
matchInstanceResponseType<String>(),
72-
matchInstanceResponseType<UpdateType>()
70+
matchInstanceResponseType<InitialResponseType>(),
71+
matchInstanceResponseType<UpdateResponseType>()
7372
)
7473
} returns subscriptionQueryResult
7574
}
@@ -281,54 +280,54 @@ internal class QueryGatewayExtensionsTest {
281280

282281
@Test
283282
fun `Query without queryName should invoke subscription query method with correct generic parameters`() {
284-
val queryResult = subjectGateway.subscriptionQuery<ExampleQuery, String, UpdateType>(query = exampleQuery)
283+
val queryResult = subjectGateway.subscriptionQuery<ExampleQuery, InitialResponseType, UpdateResponseType>(query = exampleQuery)
285284
assertSame(queryResult, subscriptionQueryResult)
286285
verify(exactly = 1) {
287286
subjectGateway.subscriptionQuery(
288287
exampleQuery,
289-
matchExpectedResponseType(String::class.java),
290-
matchExpectedResponseType(UpdateType::class.java)
288+
matchExpectedResponseType(InitialResponseType::class.java),
289+
matchExpectedResponseType(UpdateResponseType::class.java)
291290
)
292291
}
293292
}
294293

295294
@Test
296295
fun `Query without queryName should invoke subscriptionQuery method and not require explicit generic types`() {
297-
val queryResult: SubscriptionQueryResult<String, UpdateType> = subjectGateway.subscriptionQuery(query = exampleQuery)
296+
val queryResult: SubscriptionQueryResult<InitialResponseType, UpdateResponseType> = subjectGateway.subscriptionQuery(query = exampleQuery)
298297
assertSame(queryResult, subscriptionQueryResult)
299298
verify(exactly = 1) {
300299
subjectGateway.subscriptionQuery(
301300
exampleQuery,
302-
matchExpectedResponseType(String::class.java),
303-
matchExpectedResponseType(UpdateType::class.java)
301+
matchExpectedResponseType(InitialResponseType::class.java),
302+
matchExpectedResponseType(UpdateResponseType::class.java)
304303
)
305304
}
306305
}
307306

308307
@Test
309308
fun `Query should invoke subscriptionQuery method with correct generic parameters`() {
310-
val queryResult = subjectGateway.subscriptionQuery<ExampleQuery, String, UpdateType>(queryName = queryName, query = exampleQuery)
309+
val queryResult = subjectGateway.subscriptionQuery<ExampleQuery, InitialResponseType, UpdateResponseType>(queryName = queryName, query = exampleQuery)
311310
assertSame(queryResult, subscriptionQueryResult)
312311
verify(exactly = 1) {
313312
subjectGateway.subscriptionQuery(
314313
queryName,
315314
exampleQuery,
316-
matchExpectedResponseType(String::class.java),
317-
matchExpectedResponseType(UpdateType::class.java)
315+
matchExpectedResponseType(InitialResponseType::class.java),
316+
matchExpectedResponseType(UpdateResponseType::class.java)
318317
)
319318
}
320319
}
321320

322321
@Test
323322
fun `Query should invoke subscriptionQuery method and not require explicit generic types`() {
324-
val queryResult: SubscriptionQueryResult<String, UpdateType> = subjectGateway.subscriptionQuery(queryName = queryName, query = exampleQuery)
323+
val queryResult: SubscriptionQueryResult<InitialResponseType, UpdateResponseType> = subjectGateway.subscriptionQuery(queryName = queryName, query = exampleQuery)
325324
assertSame(queryResult, subscriptionQueryResult)
326325
verify(exactly = 1) {
327326
subjectGateway.subscriptionQuery(
328327
queryName,
329328
exampleQuery,
330-
matchExpectedResponseType(String::class.java),
331-
matchExpectedResponseType(UpdateType::class.java)
329+
matchExpectedResponseType(InitialResponseType::class.java),
330+
matchExpectedResponseType(UpdateResponseType::class.java)
332331
)
333332
}
334333
}

kotlin/src/test/kotlin/org/axonframework/extensions/kotlin/testObjects.kt

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,20 +15,29 @@ internal data class ExampleQuery(val value: Number)
1515
*/
1616
internal data class ExampleCommand(@TargetAggregateIdentifier val id: String)
1717

18-
internal data class UpdateType(val dummy:String)
18+
/**
19+
* Class used as update response type in subscriptionQuery method.
20+
*/
21+
internal data class UpdateResponseType(val dummy: String)
22+
23+
/**
24+
* Class used as initial response type in subscriptionQuery method.
25+
*/
26+
internal data class InitialResponseType(val dummy: String)
1927

20-
internal class ExampleSubscriptionQueryResult:SubscriptionQueryResult<String, UpdateType> {
28+
/**
29+
* Dummy class used as return object from subscriptionQuery method in the mock.
30+
*/
31+
internal class ExampleSubscriptionQueryResult : SubscriptionQueryResult<InitialResponseType, UpdateResponseType> {
2132
override fun cancel(): Boolean {
2233
TODO("Not yet implemented")
2334
}
2435

25-
override fun initialResult(): Mono<String> {
36+
override fun initialResult(): Mono<InitialResponseType> {
2637
TODO("Not yet implemented")
2738
}
2839

29-
override fun updates(): Flux<UpdateType> {
40+
override fun updates(): Flux<UpdateResponseType> {
3041
TODO("Not yet implemented")
3142
}
32-
33-
3443
}

0 commit comments

Comments
 (0)