jeanouii commented on code in PR #1814:
URL: https://github.com/apache/activemq/pull/1814#discussion_r2974538752


##########
activemq-ra/src/test/java/org/apache/activemq/ra/MessageEndpointProxyTest.java:
##########
@@ -66,27 +60,14 @@ public void testInvalidConstruction() {
 
     @Test(timeout = 60000)
     public void testSuccessfulCallSequence() throws Exception {
-        setupBeforeDeliverySuccessful();

Review Comment:
   Missing equivalents for this?
   
     verify(mockEndpointAndListener).beforeDelivery(any(Method.class));
     verify(mockEndpointAndListener).onMessage(stubMessage);
     verify(mockEndpointAndListener).afterDelivery();



##########
activemq-ra/src/test/java/org/apache/activemq/ra/MessageEndpointProxyTest.java:
##########
@@ -18,6 +18,8 @@
 
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
+import static org.mockito.Mockito.*;

Review Comment:
   Avoid star imports?



##########
activemq-ra/src/test/java/org/apache/activemq/ra/ServerSessionImplTest.java:
##########
@@ -125,83 +104,41 @@ public void testCloseCanStopActiveSession() throws 
Exception {
         final int maxMessages = 4000;
         final CountDownLatch messageCount = new CountDownLatch(maxMessages);
 
-        final MessageEndpointFactory messageEndpointFactory = 
context.mock(MessageEndpointFactory.class);
-        final MessageResourceAdapter resourceAdapter = 
context.mock(MessageResourceAdapter.class);
-        final ActiveMQEndpointActivationKey key = 
context.mock(ActiveMQEndpointActivationKey.class);
-        messageEndpoint = context.mock(MessageEndpointProxy.class);
-        workManager = context.mock(WorkManager.class);
-        final MessageActivationSpec messageActivationSpec = 
context.mock(MessageActivationSpec.class);
-        final BootstrapContext boostrapContext = 
context.mock(BootstrapContext.class);
-        context.checking(new Expectations() {
-            {
-                allowing(boostrapContext).getWorkManager();
-                will(returnValue(workManager));
-                allowing(resourceAdapter).getBootstrapContext();
-                will(returnValue(boostrapContext));
-                
allowing(messageEndpointFactory).isDeliveryTransacted(with(any(Method.class)));
-                will(returnValue(Boolean.FALSE));
-                allowing(key).getMessageEndpointFactory();
-                will(returnValue(messageEndpointFactory));
-                allowing(key).getActivationSpec();
-                will(returnValue(messageActivationSpec));
-                allowing(messageActivationSpec).isUseJndi();
-                will(returnValue(Boolean.FALSE));
-                allowing(messageActivationSpec).getDestinationType();
-                will(returnValue("jakarta.jms.Queue"));
-                allowing(messageActivationSpec).getDestination();
-                will(returnValue("Queue"));
-                allowing(messageActivationSpec).getAcknowledgeModeForSession();
-                will(returnValue(1));
-                allowing(messageActivationSpec).getMaxSessionsIntValue();
-                will(returnValue(1));
-                allowing(messageActivationSpec).getEnableBatchBooleanValue();
-                will(returnValue(Boolean.FALSE));
-                
allowing(messageActivationSpec).isUseRAManagedTransactionEnabled();
-                will(returnValue(Boolean.TRUE));
-                
allowing(messageEndpointFactory).createEndpoint(with(nullValue(XAResource.class)));
-                will(returnValue(messageEndpoint));
-
-                allowing(workManager).scheduleWork((Work) 
with(any(Work.class)), with(any(long.class)), with(any(ExecutionContext.class)),
-                    with(any(WorkListener.class)));
-                will(new Action() {
-                    @Override
-                    public Object invoke(Invocation invocation) throws 
Throwable {
-                        return null;
-                    }
-
-                    @Override
-                    public void describeTo(Description description) {
-                    }
-                });
-
-                allowing(messageEndpoint).beforeDelivery((Method) 
with(any(Method.class)));
-                
allowing(messageEndpoint).onMessage(with(any(jakarta.jms.Message.class)));
-                will(new Action() {
-                    @Override
-                    public Object invoke(Invocation invocation) throws 
Throwable {
-                        messageCount.countDown();
-                        if (messageCount.getCount() < maxMessages - 11) {
-                            TimeUnit.MILLISECONDS.sleep(200);
-                        }
-                        return null;
-                    }
-
-                    @Override
-                    public void describeTo(Description description) {
-                        description.appendText("Keep message count");
-                    }
-                });
-                allowing(messageEndpoint).afterDelivery();
-                allowing(messageEndpoint).release();
-
-                allowing(workManager).scheduleWork(
-                    with(any(Work.class)),
-                    with(any(Long.TYPE)),
-                    with(nullValue(ExecutionContext.class)),
-                    with(nullValue(WorkListener.class)));
-
+        final MessageEndpointFactory messageEndpointFactory = 
mock(MessageEndpointFactory.class);
+        final MessageResourceAdapter resourceAdapter = 
mock(MessageResourceAdapter.class);
+        final ActiveMQEndpointActivationKey key = 
mock(ActiveMQEndpointActivationKey.class);
+        messageEndpoint = mock(MessageEndpointProxy.class);
+        workManager = mock(WorkManager.class);
+        final MessageActivationSpec messageActivationSpec = 
mock(MessageActivationSpec.class);
+        final BootstrapContext boostrapContext = mock(BootstrapContext.class);
+
+        
lenient().when(boostrapContext.getWorkManager()).thenReturn(workManager);

Review Comment:
   Similar to what was done with JMock, but some of this block could be 
factorized in a helper method



##########
activemq-ra/src/test/java/org/apache/activemq/ra/MessageEndpointProxyTest.java:
##########
@@ -66,27 +60,14 @@ public void testInvalidConstruction() {
 
     @Test(timeout = 60000)
     public void testSuccessfulCallSequence() throws Exception {
-        setupBeforeDeliverySuccessful();
-        setupOnMessageSuccessful();
-        setupAfterDeliverySuccessful();
-
         doBeforeDeliveryExpectSuccess();
         doOnMessageExpectSuccess();
         doAfterDeliveryExpectSuccess();
     }
 
     @Test(timeout = 60000)
     public void testBeforeDeliveryFailure() throws Exception {
-        context.checking(new Expectations() {{
-            oneOf 
(mockEndpointAndListener).beforeDelivery(with(any(Method.class)));
-            will(throwException(new ResourceException()));
-        }});
-        context.checking(new Expectations() {{
-            never (mockEndpointAndListener).onMessage(null);
-            never (mockEndpointAndListener).afterDelivery();
-        }});
-
-        setupExpectRelease();
+        doThrow(new 
ResourceException()).when(mockEndpointAndListener).beforeDelivery(any(Method.class));

Review Comment:
   A few checks not ported here I believe
   - the 2 never in the checking block 
   
     verify(mockEndpointAndListener, never()).onMessage(any());
     verify(mockEndpointAndListener, never()).afterDelivery();
   
   - the release in the setupExpectRelease() method
     verify(mockEndpointAndListener).release();



##########
activemq-ra/src/test/java/org/apache/activemq/ra/MessageEndpointProxyTest.java:
##########
@@ -102,16 +83,10 @@ public void testBeforeDeliveryFailure() throws Exception {
 
     @Test(timeout = 60000)
     public void testOnMessageFailure() throws Exception {
-        setupBeforeDeliverySuccessful();
-
-        context.checking(new Expectations() {{
-            oneOf (mockEndpointAndListener).onMessage(with(same(stubMessage)));
-            will(throwException(new RuntimeException()));
-        }});
+        doBeforeDeliveryExpectSuccess();
 
-        setupAfterDeliverySuccessful();

Review Comment:
   Missing the verify for Mockito



##########
activemq-ra/src/test/java/org/apache/activemq/ra/ServerSessionImplTest.java:
##########
@@ -60,21 +49,14 @@
 import java.util.concurrent.atomic.AtomicBoolean;
 import java.util.concurrent.atomic.AtomicReference;
 
-import static org.hamcrest.Matchers.nullValue;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
+import static org.mockito.Mockito.*;

Review Comment:
   I think Matt told me to avoid this. It's a test class, so I think it's ok to 
have it



##########
activemq-ra/src/test/java/org/apache/activemq/ra/ServerSessionImplTest.java:
##########
@@ -60,21 +49,14 @@
 import java.util.concurrent.atomic.AtomicBoolean;
 import java.util.concurrent.atomic.AtomicReference;
 
-import static org.hamcrest.Matchers.nullValue;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
+import static org.mockito.Mockito.*;
+import static org.mockito.ArgumentMatchers.*;
 
 @Ignore

Review Comment:
   Outside of the scope of this PR. This test is @Ignore, so you could have 
also remove it
   Or fix it.
   
   But that's fully equivalent



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information, visit: https://activemq.apache.org/contact


Reply via email to