Skip to content

Commit df21cf9

Browse files
committed
feat(open-multi-domain-api): add unit tests
1 parent 7d36549 commit df21cf9

File tree

2 files changed

+59
-2
lines changed

2 files changed

+59
-2
lines changed

async/async-commons-api/src/test/java/org/reactivecommons/async/api/HandlerRegistryTest.java

Lines changed: 39 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
import org.reactivecommons.async.api.handlers.DomainEventHandler;
1313
import org.reactivecommons.async.api.handlers.QueryHandler;
1414
import org.reactivecommons.async.api.handlers.QueryHandlerDelegate;
15+
import org.reactivecommons.async.api.handlers.RawCommandHandler;
1516
import org.reactivecommons.async.api.handlers.RawEventHandler;
1617
import org.reactivecommons.async.api.handlers.registered.RegisteredCommandHandler;
1718
import org.reactivecommons.async.api.handlers.registered.RegisteredEventListener;
@@ -25,6 +26,7 @@
2526
class HandlerRegistryTest {
2627
private final HandlerRegistry registry = HandlerRegistry.register();
2728
private final String name = "some.event";
29+
private final String nameRaw = "some.raw.event";
2830
private final String domain = "some-domain";
2931

3032

@@ -60,9 +62,9 @@ void shouldListenDomainCloudEvent() {
6062
void shouldListenDomainRawEvent() {
6163
SomeRawEventHandler eventHandler = new SomeRawEventHandler();
6264

63-
registry.listenDomainRawEvent(domain, name, eventHandler);
65+
registry.listenRawEvent(name, eventHandler);
6466

65-
assertThat(registry.getDomainEventListeners().get(domain))
67+
assertThat(registry.getDomainEventListeners().get(DEFAULT_DOMAIN))
6668
.anySatisfy(registered -> assertThat(registered)
6769
.extracting(RegisteredEventListener::getPath, RegisteredEventListener::getInputClass,
6870
RegisteredEventListener::getHandler
@@ -131,6 +133,20 @@ void shouldRegisterNotificationCloudEventListener() {
131133
.anySatisfy(listener -> assertThat(listener.getPath()).isEqualTo(name));
132134
}
133135

136+
@Test
137+
void shouldRegisterNotificationRawEventListener() {
138+
SomeRawEventHandler eventHandler = new SomeRawEventHandler();
139+
140+
registry.listenRawEvent(nameRaw, eventHandler);
141+
142+
assertThat(registry.getEventNotificationListener().get(DEFAULT_DOMAIN))
143+
.anySatisfy(registered -> assertThat(registered)
144+
.extracting(RegisteredEventListener::getPath, RegisteredEventListener::getInputClass,
145+
RegisteredEventListener::getHandler
146+
)
147+
.containsExactly(nameRaw, RawMessage.class, eventHandler)).hasSize(1);
148+
}
149+
134150
@Test
135151
@SuppressWarnings("unchecked")
136152
void listenEvent() {
@@ -201,6 +217,20 @@ void handleCloudEventCommand() {
201217
.containsExactly(name, CloudEvent.class, cloudCommandHandler)).hasSize(1);
202218
}
203219

220+
@Test
221+
void handleRawCommand() {
222+
SomeRawCommandEventHandler eventHandler = new SomeRawCommandEventHandler();
223+
224+
registry.handleRawCommand(nameRaw, eventHandler);
225+
226+
assertThat(registry.getCommandHandlers().get(DEFAULT_DOMAIN))
227+
.anySatisfy(registered -> assertThat(registered)
228+
.extracting(RegisteredCommandHandler::getPath, RegisteredCommandHandler::getInputClass,
229+
RegisteredCommandHandler::getHandler
230+
)
231+
.containsExactly(nameRaw, RawMessage.class, eventHandler)).hasSize(1);
232+
}
233+
204234
@Test
205235
void shouldServerCloudEventQuery() {
206236
SomeCloudEventQueryHandler queryHandler = new SomeCloudEventQueryHandler();
@@ -306,6 +336,13 @@ public Mono<Void> handle(CloudEvent message) {
306336
}
307337
}
308338

339+
private static class SomeRawCommandEventHandler implements RawCommandHandler<RawMessage> {
340+
@Override
341+
public Mono<Void> handle(RawMessage message) {
342+
return Mono.empty();
343+
}
344+
}
345+
309346
private static class SomeQueryHandler implements QueryHandler<SomeDataClass, SomeDataClass> {
310347
@Override
311348
public Mono<SomeDataClass> handle(SomeDataClass message) {

async/async-rabbit/src/test/java/org/reactivecommons/async/rabbit/HandlerResolverTest.java

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,17 @@ void shouldMatchForAWildcardEvent() {
5959
Assertions.assertThat(eventListener.getPath()).isEqualTo("some.*");
6060
}
6161

62+
@Test
63+
void shouldThrowError() {
64+
// Arrange
65+
RegisteredQueryHandler<?, ?> handler = new RegisteredQueryHandler<>("*",
66+
(from, message) -> Mono.empty(),
67+
String.class);
68+
// Act
69+
// Assert
70+
Assertions.assertThatThrownBy(() -> resolver.addQueryHandler(handler)).isInstanceOf(RuntimeException.class);
71+
}
72+
6273
@Test
6374
void shouldMatchForAnExactEvent() {
6475
// Act
@@ -67,4 +78,13 @@ void shouldMatchForAnExactEvent() {
6778
Assertions.assertThat(eventListener.getPath()).isEqualTo("event.name");
6879
}
6980

81+
@Test
82+
void shouldCheckIfHasListenerTypes() {
83+
// Act
84+
// Assert
85+
Assertions.assertThat(resolver.hasCommandHandlers()).isFalse();
86+
Assertions.assertThat(resolver.hasQueryHandlers()).isFalse();
87+
Assertions.assertThat(resolver.hasNotificationListeners()).isFalse();
88+
}
89+
7090
}

0 commit comments

Comments
 (0)