1111import org .reactivecommons .async .api .handlers .registered .RegisteredCommandHandler ;
1212import org .reactivecommons .async .api .handlers .registered .RegisteredEventListener ;
1313import org .reactivecommons .async .api .handlers .registered .RegisteredQueryHandler ;
14- import org .reactivecommons .async .rabbit .DynamicRegistryImp ;
15- import org .reactivecommons .async .rabbit .HandlerResolver ;
16- import org .reactivecommons .async .rabbit .communications .TopologyCreator ;
1714import org .reactivecommons .async .commons .config .IBrokerConfigProps ;
15+ import org .reactivecommons .async .rabbit .communications .TopologyCreator ;
1816import reactor .core .publisher .Mono ;
1917import reactor .rabbitmq .BindingSpecification ;
2018import reactor .test .StepVerifier ;
@@ -52,13 +50,12 @@ void setUp() {
5250 Map <String , RegisteredQueryHandler <?, ?>> queryHandlers = new ConcurrentHashMap <>();
5351 resolver = new HandlerResolver (queryHandlers , eventListeners , notificationEventListeners ,
5452 dynamicEventsHandlers , commandHandlers );
55- when (props .getDomainEventsExchangeName ()).thenReturn ("domainEx" );
56- when (props .getEventsQueue ()).thenReturn ("events.queue" );
5753 dynamicRegistry = new DynamicRegistryImp (resolver , topologyCreator , props );
5854 }
5955
6056 @ Test
6157 void registerEventListener () {
58+ setupMock ();
6259 when (topologyCreator .bind (any ())).thenReturn (just (mock (BindOk .class )));
6360 dynamicRegistry .listenEvent ("event1" , message -> Mono .empty (), Long .class );
6461
@@ -68,6 +65,7 @@ void registerEventListener() {
6865
6966 @ Test
7067 void declareBindingWhenRegisterEventListener () {
68+ setupMock ();
7169 ArgumentCaptor <BindingSpecification > captor = ArgumentCaptor .forClass (BindingSpecification .class );
7270 when (topologyCreator .bind (any ())).thenReturn (just (mock (BindOk .class )));
7371
@@ -82,6 +80,7 @@ void declareBindingWhenRegisterEventListener() {
8280
8381 @ Test
8482 void subscribeToResultWhenRegisterEventListener () {
83+ setupMock ();
8584 PublisherProbe <BindOk > probe = PublisherProbe .of (just (mock (BindOk .class )));
8685 when (topologyCreator .bind (any ())).thenReturn (probe .mono ());
8786
@@ -94,6 +93,7 @@ void subscribeToResultWhenRegisterEventListener() {
9493
9594 @ Test
9695 void shouldBindDomainEventsToEventsQueueUsingEventName () {
96+ setupMock ();
9797 ArgumentCaptor <BindingSpecification > bindingSpecificationCaptor =
9898 ArgumentCaptor .forClass (BindingSpecification .class );
9999
@@ -119,6 +119,7 @@ void shouldBindDomainEventsToEventsQueueUsingEventName() {
119119
120120 @ Test
121121 void shouldUnbindDomainEventsToEventsQueueUsingEventName () {
122+ setupMock ();
122123 ArgumentCaptor <BindingSpecification > bindingSpecificationCaptor =
123124 ArgumentCaptor .forClass (BindingSpecification .class );
124125
@@ -142,5 +143,19 @@ void shouldUnbindDomainEventsToEventsQueueUsingEventName() {
142143 topologyCreatorProbe .assertWasSubscribed ();
143144 }
144145
146+ @ Test
147+ void serveQueryShouldAddHandler () {
148+ dynamicRegistry .serveQuery ("dynamic.query" , message -> Mono .just (message * 100 ), Integer .class );
149+
150+ final RegisteredQueryHandler <Integer , Integer > handler = resolver .getQueryHandler ("dynamic.query" );
151+ StepVerifier .create (handler .getHandler ().handle (null , 50 ))
152+ .expectNext (5000 )
153+ .verifyComplete ();
154+ }
155+
156+ private void setupMock (){
157+ when (props .getDomainEventsExchangeName ()).thenReturn ("domainEx" );
158+ when (props .getEventsQueue ()).thenReturn ("events.queue" );
159+ }
145160
146161}
0 commit comments