Skip to content

Commit a8de6e9

Browse files
authored
Unify all tests (#367)
1 parent f170f10 commit a8de6e9

File tree

28 files changed

+791
-946
lines changed

28 files changed

+791
-946
lines changed

.github/workflows/build.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,5 @@ jobs:
3535
name: codecov-umbrella
3636
fail_ci_if_error: false
3737
verbose: true
38-
java-version: 17
3938
token: ${{ secrets.CODECOV_TOKEN }}
4039
if: github.ref == 'refs/heads/main'

codecov.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
ignore:
2+
- "**/testFixtures/**"

projects/kediatr-core/src/main/kotlin/com/trendyol/kediatr/Registrar.kt

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,14 @@ abstract class Registrar {
6565
protected fun extractParameter(genericInterface: ParameterizedType): Class<*> =
6666
when (val typeArgument = genericInterface.actualTypeArguments[0]) {
6767
is ParameterizedType -> typeArgument.rawType as Class<*>
68-
is TypeVariable<*> -> extractParameter((genericInterface.rawType as Class<*>).genericInterfaces[0] as ParameterizedType)
68+
is TypeVariable<*> -> {
69+
val rawType = (genericInterface.rawType as Class<*>)
70+
when {
71+
rawType.genericInterfaces.any() -> extractParameter(rawType.genericInterfaces[0] as ParameterizedType)
72+
else -> rawType
73+
}
74+
}
75+
6976
else -> typeArgument as Class<*>
7077
}
7178
}

projects/kediatr-core/src/test/kotlin/com/trendyol/kediatr/CommandHandlerTest.kt

Lines changed: 0 additions & 5 deletions
This file was deleted.

projects/kediatr-core/src/test/kotlin/com/trendyol/kediatr/CommandWithResultHandlerTest.kt

Lines changed: 0 additions & 5 deletions
This file was deleted.
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
package com.trendyol.kediatr
2+
3+
import com.trendyol.kediatr.testing.*
4+
import io.kotest.matchers.shouldBe
5+
import org.junit.jupiter.api.Test
6+
7+
class MediatorTests : MediatorUseCases() {
8+
override fun provideMediator(): Mediator = createMediator(
9+
types = listOf(
10+
TestCommandHandler(mediator = { testMediator }),
11+
TestPipelineCommandHandler(mediator = { testMediator }),
12+
TestCommandWithResultCommandHandler(mediator = { testMediator }),
13+
TestNotificationHandler(mediator = { testMediator }),
14+
TestQueryHandler(mediator = { testMediator }),
15+
TestCommandHandlerWithoutInjection(),
16+
TestInheritedCommandHandlerForSpecificCommand(),
17+
TestCommandHandlerForTypeLimitedInheritance(),
18+
ParameterizedCommandHandler<String>(),
19+
ParameterizedCommandHandlerForInheritance<String>(),
20+
ParameterizedCommandWithResultHandler<Long, String>(),
21+
ParameterizedCommandWithResultHandlerOfInheritedHandler<String>(),
22+
APingHandler(),
23+
AnotherPingHandler(),
24+
Handler1ForNotificationOfMultipleHandlers(),
25+
Handler2ForNotificationOfMultipleHandlers(),
26+
InheritedNotificationHandler(),
27+
ParameterizedNotificationHandler<String>(),
28+
ParameterizedNotificationHandlerForInheritance<String>(),
29+
TestPipelineCommandHandlerWithoutInjection(),
30+
TestPipelineCommandHandlerThatFails(),
31+
ExceptionPipelineBehavior(),
32+
LoggingPipelineBehavior(),
33+
InheritedPipelineBehaviour(),
34+
ParameterizedQueryHandler<Long, String>()
35+
)
36+
)
37+
38+
@Test
39+
fun `when a publish strategy is defined it should be set`() {
40+
listOf(
41+
ContinueOnExceptionPublishStrategy(),
42+
ParallelNoWaitPublishStrategy(),
43+
ParallelWhenAllPublishStrategy(),
44+
StopOnExceptionPublishStrategy()
45+
).forEach {
46+
val builder = MediatorBuilder(MappingDependencyProvider(hashMapOf())).withPublishStrategy(it)
47+
builder.defaultPublishStrategy shouldBe it
48+
}
49+
}
50+
}

projects/kediatr-core/src/test/kotlin/com/trendyol/kediatr/NotificationHandlerTest.kt

Lines changed: 0 additions & 5 deletions
This file was deleted.

projects/kediatr-core/src/test/kotlin/com/trendyol/kediatr/PipelineBehaviorTest.kt

Lines changed: 0 additions & 5 deletions
This file was deleted.

projects/kediatr-core/src/test/kotlin/com/trendyol/kediatr/QueryHandlerTest.kt

Lines changed: 0 additions & 5 deletions
This file was deleted.

projects/kediatr-core/src/testFixtures/kotlin/com/trendyol/kediatr/coreUseCases/CommandHandlerUseCases.kt

Lines changed: 0 additions & 135 deletions
This file was deleted.

0 commit comments

Comments
 (0)