diff --git a/rt/ws/addr/pom.xml b/rt/ws/addr/pom.xml index 0fa4b883599..0537f6ff387 100644 --- a/rt/ws/addr/pom.xml +++ b/rt/ws/addr/pom.xml @@ -55,8 +55,9 @@ test - org.easymock - easymock + org.mockito + mockito-core + ${cxf.mockito.version} test diff --git a/rt/ws/addr/src/test/java/org/apache/cxf/ws/addressing/impl/ContextUtilsTest.java b/rt/ws/addr/src/test/java/org/apache/cxf/ws/addressing/impl/ContextUtilsTest.java index ce2b6bac7c3..0f1340aca80 100755 --- a/rt/ws/addr/src/test/java/org/apache/cxf/ws/addressing/impl/ContextUtilsTest.java +++ b/rt/ws/addr/src/test/java/org/apache/cxf/ws/addressing/impl/ContextUtilsTest.java @@ -42,14 +42,13 @@ import org.apache.cxf.ws.addressing.JAXWSAConstants; import org.apache.cxf.ws.addressing.Names; -import org.easymock.EasyMock; -import org.easymock.IMocksControl; -import org.junit.Before; import org.junit.Test; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; /** * @@ -60,55 +59,40 @@ public class ContextUtilsTest { private static final QName OLD_WSDL_WSA_ACTION_QNAME = new QName(Names.WSA_NAMESPACE_WSDL_NAME_OLD, Names.WSAW_ACTION_NAME); - private IMocksControl control; - - - @Before - public void setUp() { - control = EasyMock.createNiceControl(); - } - @Test public void testGetActionFromExtensible() { Map attributes = new HashMap<>(); - Extensible ext = control.createMock(Extensible.class); - EasyMock.expect(ext.getExtensionAttributes()).andReturn(attributes).anyTimes(); + Extensible ext = mock(Extensible.class); + when(ext.getExtensionAttributes()).thenReturn(attributes); attributes.put(WSA_ACTION_QNAME, "urn:foo:test:2"); - EasyMock.expect(ext.getExtensionAttribute(JAXWSAConstants.WSAW_ACTION_QNAME)). - andReturn("urn:foo:test:1"); - control.replay(); + when(ext.getExtensionAttribute(JAXWSAConstants.WSAW_ACTION_QNAME)). + thenReturn("urn:foo:test:1"); String action = InternalContextUtils.getAction(ext); assertEquals("urn:foo:test:1", action); - control.reset(); attributes.clear(); - EasyMock.expect(ext.getExtensionAttributes()).andReturn(attributes).anyTimes(); - EasyMock.expect(ext.getExtensionAttribute(JAXWSAConstants.WSAW_ACTION_QNAME)). - andReturn(null); + when(ext.getExtensionAttributes()).thenReturn(attributes); + when(ext.getExtensionAttribute(JAXWSAConstants.WSAW_ACTION_QNAME)). + thenReturn(null); attributes.put(WSA_ACTION_QNAME, "urn:foo:test:2"); - control.replay(); action = InternalContextUtils.getAction(ext); assertEquals("urn:foo:test:2", action); - control.reset(); attributes.clear(); - EasyMock.expect(ext.getExtensionAttributes()).andReturn(attributes).anyTimes(); - EasyMock.expect(ext.getExtensionAttribute(JAXWSAConstants.WSAW_ACTION_QNAME)). - andReturn(null); + when(ext.getExtensionAttributes()).thenReturn(attributes); + when(ext.getExtensionAttribute(JAXWSAConstants.WSAW_ACTION_QNAME)). + thenReturn(null); attributes.put(OLD_WSDL_WSA_ACTION_QNAME, "urn:foo:test:3"); - control.replay(); action = InternalContextUtils.getAction(ext); assertEquals("urn:foo:test:3", action); - control.reset(); attributes.clear(); - EasyMock.expect(ext.getExtensionAttributes()).andReturn(attributes).anyTimes(); - EasyMock.expect(ext.getExtensionAttribute(JAXWSAConstants.WSAW_ACTION_QNAME)). - andReturn(null); - control.replay(); + when(ext.getExtensionAttributes()).thenReturn(attributes); + when(ext.getExtensionAttribute(JAXWSAConstants.WSAW_ACTION_QNAME)). + thenReturn(null); action = InternalContextUtils.getAction(ext); assertEquals(null, action); @@ -116,8 +100,8 @@ public void testGetActionFromExtensible() { @Test public void testGetActionFromMessage() { - Message msg = control.createMock(Message.class); - Exchange exchange = control.createMock(Exchange.class); + Message msg = mock(Message.class); + Exchange exchange = mock(Exchange.class); QName mqname = new QName("http://foo.com", "bar"); QName fqname = new QName("urn:foo:test:4", "fault"); @@ -130,76 +114,66 @@ public void testGetActionFromMessage() { BindingOperationInfo boi = new BindingOperationInfo(null, operationInfo); // test 1 : retrieving the normal action prop from the message - EasyMock.expect(msg.getExchange()).andReturn(exchange).anyTimes(); - EasyMock.expect(exchange.getBindingOperationInfo()).andReturn(boi); - EasyMock.expect(msg.get(ContextUtils.ACTION)).andReturn("urn:foo:test:1"); - control.replay(); + when(msg.getExchange()).thenReturn(exchange); + when(exchange.getBindingOperationInfo()).thenReturn(boi); + when(msg.get(ContextUtils.ACTION)).thenReturn("urn:foo:test:1"); AttributedURIType action = InternalContextUtils.getAction(msg); assertNotNull(action); assertEquals("urn:foo:test:1", action.getValue()); - control.reset(); // test 2 : retrieving the normal soap action prop from the message - EasyMock.expect(msg.getExchange()).andReturn(exchange).anyTimes(); - EasyMock.expect(exchange.getBindingOperationInfo()).andReturn(boi); - EasyMock.expect(msg.get(SoapBindingConstants.SOAP_ACTION)).andReturn("urn:foo:test:2"); - control.replay(); - + when(msg.getExchange()).thenReturn(exchange); + when(exchange.getBindingOperationInfo()).thenReturn(boi); + when(msg.get(SoapBindingConstants.SOAP_ACTION)).thenReturn("urn:foo:test:2"); + when(msg.get(ContextUtils.ACTION)).thenReturn(null); + action = InternalContextUtils.getAction(msg); assertNotNull(action); assertEquals("urn:foo:test:2", action.getValue()); - control.reset(); // test 3 : retrieving the action prop from the message info - EasyMock.expect(msg.getExchange()).andReturn(exchange).anyTimes(); - EasyMock.expect(exchange.getBindingOperationInfo()).andReturn(boi); + when(msg.getExchange()).thenReturn(exchange); + when(exchange.getBindingOperationInfo()).thenReturn(boi); + when(msg.get(SoapBindingConstants.SOAP_ACTION)).thenReturn(null); messageInfo.setProperty(ContextUtils.ACTION, "urn:foo:test:3"); - control.replay(); action = InternalContextUtils.getAction(msg); assertNotNull(action); assertEquals("urn:foo:test:3", action.getValue()); - control.reset(); // test 4 : retrieving the action for a fault without message part SoapFault fault = new SoapFault("faulty service", new RuntimeException(), fqname); - EasyMock.expect(msg.getExchange()).andReturn(exchange).anyTimes(); - EasyMock.expect(msg.getContent(Exception.class)).andReturn(fault).anyTimes(); - EasyMock.expect(exchange.getBindingOperationInfo()).andReturn(boi); - control.replay(); + when(msg.getExchange()).thenReturn(exchange); + when(msg.getContent(Exception.class)).thenReturn(fault); + when(exchange.getBindingOperationInfo()).thenReturn(boi); action = InternalContextUtils.getAction(msg); assertNull(action); - control.reset(); // test 5 : retrieving the action for a fault with matching message part faultInfo.addMessagePart(new MessagePartInfo(new QName("http://foo.com", "faultInfo"), null)); faultInfo.getMessagePart(0).setTypeClass(RuntimeException.class); faultInfo.addExtensionAttribute(Names.WSAW_ACTION_QNAME, "urn:foo:test:4"); - EasyMock.expect(msg.getExchange()).andReturn(exchange).anyTimes(); - EasyMock.expect(msg.getContent(Exception.class)).andReturn(fault).anyTimes(); - EasyMock.expect(exchange.getBindingOperationInfo()).andReturn(boi); - control.replay(); + when(msg.getExchange()).thenReturn(exchange); + when(msg.getContent(Exception.class)).thenReturn(fault); + when(exchange.getBindingOperationInfo()).thenReturn(boi); action = InternalContextUtils.getAction(msg); assertNotNull(action); assertEquals("urn:foo:test:4", action.getValue()); - control.reset(); // test 6 : retrieving the action for a ws-addr fault with matching message part fault = new SoapFault("Action Mismatch", new QName(Names.WSA_NAMESPACE_NAME, Names.ACTION_MISMATCH_NAME)); - EasyMock.expect(msg.getExchange()).andReturn(exchange).anyTimes(); - EasyMock.expect(msg.getContent(Exception.class)).andReturn(fault).anyTimes(); - EasyMock.expect(exchange.getBindingOperationInfo()).andReturn(boi); - control.replay(); + when(msg.getExchange()).thenReturn(exchange); + when(msg.getContent(Exception.class)).thenReturn(fault); + when(exchange.getBindingOperationInfo()).thenReturn(boi); action = InternalContextUtils.getAction(msg); assertNotNull(action); assertEquals(Names.WSA_DEFAULT_FAULT_ACTION, action.getValue()); - control.reset(); // test 7 : retrieve the action for a fault matching the fault class with the WebFault annotation fault = new SoapFault("faulty service", new TestFault(), Fault.FAULT_CODE_SERVER); @@ -207,10 +181,9 @@ public void testGetActionFromMessage() { faultInfo.getMessagePart(0).setTypeClass(Object.class); faultInfo.getMessagePart(0).setConcreteName(new QName("urn:foo:test:7", "testFault")); faultInfo.addExtensionAttribute(Names.WSAW_ACTION_QNAME, "urn:foo:test:7"); - EasyMock.expect(msg.getExchange()).andReturn(exchange).anyTimes(); - EasyMock.expect(msg.getContent(Exception.class)).andReturn(fault).anyTimes(); - EasyMock.expect(exchange.getBindingOperationInfo()).andReturn(boi); - control.replay(); + when(msg.getExchange()).thenReturn(exchange); + when(msg.getContent(Exception.class)).thenReturn(fault); + when(exchange.getBindingOperationInfo()).thenReturn(boi); action = InternalContextUtils.getAction(msg); assertNotNull(action); diff --git a/rt/ws/addr/src/test/java/org/apache/cxf/ws/addressing/impl/MAPAggregatorTest.java b/rt/ws/addr/src/test/java/org/apache/cxf/ws/addressing/impl/MAPAggregatorTest.java index ae775c450b6..fda5b29f337 100644 --- a/rt/ws/addr/src/test/java/org/apache/cxf/ws/addressing/impl/MAPAggregatorTest.java +++ b/rt/ws/addr/src/test/java/org/apache/cxf/ws/addressing/impl/MAPAggregatorTest.java @@ -74,8 +74,6 @@ import org.apache.cxf.ws.addressing.Names; import org.apache.cxf.ws.addressing.WSAContextUtils; -import org.easymock.EasyMock; -import org.easymock.IMocksControl; import org.junit.After; import org.junit.Before; import org.junit.Test; @@ -88,11 +86,15 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertSame; import static org.junit.Assert.assertTrue; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.ArgumentMatchers.eq; +import static org.mockito.ArgumentMatchers.isA; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; public class MAPAggregatorTest { private MAPAggregatorImpl aggregator; - private IMocksControl control; private AddressingProperties expectedMAPs; private String expectedTo; private String expectedReplyTo; @@ -102,7 +104,6 @@ public class MAPAggregatorTest { @Before public void setUp() { aggregator = new MAPAggregatorImpl(); - control = EasyMock.createNiceControl(); } @After @@ -119,7 +120,6 @@ public void testRequestorOutboundUsingAddressingMAPsInContext() throws Exception { Message message = setUpMessage(true, true, false, true, true); aggregator.mediate(message, false); - control.verify(); verifyMessage(message, true, true, true); } @@ -128,7 +128,6 @@ public void testRequestorOutboundUsingAddressingMAPsInContextZeroLengthAction() throws Exception { Message message = setUpMessage(true, true, false, true, true, true); aggregator.mediate(message, false); - control.verify(); verifyMessage(message, true, true, true); } @@ -137,7 +136,6 @@ public void testRequestorOutboundUsingAddressingMAPsInContextFault() throws Exception { Message message = setUpMessage(true, true, false, true, true); aggregator.mediate(message, true); - control.verify(); verifyMessage(message, true, true, true); } @@ -146,7 +144,6 @@ public void testRequestorOutboundUsingAddressingNoMAPsInContext() throws Exception { Message message = setUpMessage(true, true, false, true, false); aggregator.mediate(message, false); - control.verify(); verifyMessage(message, true, true, true); } @@ -155,7 +152,6 @@ public void testRequestorOutboundUsingAddressingNoMAPsInContextFault() throws Exception { Message message = setUpMessage(true, true, false, true, false); aggregator.mediate(message, true); - control.verify(); verifyMessage(message, true, true, true); } @@ -163,7 +159,6 @@ public void testRequestorOutboundUsingAddressingNoMAPsInContextFault() public void testRequestorOutboundNotUsingAddressing() throws Exception { Message message = setUpMessage(true, true, false, false); aggregator.mediate(message, false); - control.verify(); verifyMessage(message, true, true, false); } @@ -172,7 +167,6 @@ public void testRequestorOutboundNotUsingAddressingFault() throws Exception { Message message = setUpMessage(true, true, false, false); aggregator.mediate(message, true); - control.verify(); verifyMessage(message, true, true, false); } @@ -181,7 +175,6 @@ public void testRequestorOutboundOnewayUsingAddressingMAPsInContext() throws Exception { Message message = setUpMessage(true, true, true, true, true); aggregator.mediate(message, false); - control.verify(); verifyMessage(message, true, true, true); } @@ -190,7 +183,6 @@ public void testRequestorOutboundOnewayUsingAddressingMAPsInContextFault() throws Exception { Message message = setUpMessage(true, true, true, true, true); aggregator.mediate(message, true); - control.verify(); verifyMessage(message, true, true, true); } @@ -199,7 +191,6 @@ public void testRequestorOutboundOnewayUsingAddressingNoMAPsInContext() throws Exception { Message message = setUpMessage(true, true, true, true, false); aggregator.mediate(message, false); - control.verify(); verifyMessage(message, true, true, true); } @@ -208,7 +199,6 @@ public void testRequestorOutboundOnewayUsingAddressingNoMAPsInContextFault() throws Exception { Message message = setUpMessage(true, true, true, true, false); aggregator.mediate(message, true); - control.verify(); verifyMessage(message, true, true, true); } @@ -216,7 +206,6 @@ public void testRequestorOutboundOnewayUsingAddressingNoMAPsInContextFault() public void testRequestorOutboundOnewayNotUsingAddressing() throws Exception { Message message = setUpMessage(true, true, true, false); aggregator.mediate(message, false); - control.verify(); verifyMessage(message, true, true, false); } @@ -226,7 +215,6 @@ public void testRequestorOutboundOnewayNotUsingAddressingFault() throws Exception { Message message = setUpMessage(true, true, true, false); aggregator.mediate(message, true); - control.verify(); verifyMessage(message, true, true, false); } @@ -234,7 +222,6 @@ public void testRequestorOutboundOnewayNotUsingAddressingFault() public void testResponderInboundValidMAPs() throws Exception { Message message = setUpMessage(false, false, false, false, false, false, true); aggregator.mediate(message, false); - control.verify(); verifyMessage(message, false, false, false); } @@ -243,7 +230,6 @@ public void testResponderInboundDecoupled() throws Exception { Message message = setUpMessage(false, false, false, true, false, true, true); aggregator.mediate(message, false); - control.verify(); verifyMessage(message, false, false, true); } @@ -252,7 +238,6 @@ public void testResponderInboundOneway() throws Exception { Message message = setUpMessage(false, false, true, true, false, true, true); aggregator.mediate(message, false); - control.verify(); verifyMessage(message, false, false, true); } @@ -260,7 +245,6 @@ public void testResponderInboundOneway() throws Exception { public void testResponderInboundValidMAPsFault() throws Exception { Message message = setUpMessage(false, false, false, false, false, false, true); aggregator.mediate(message, true); - control.verify(); verifyMessage(message, false, false, true); } @@ -270,7 +254,6 @@ public void testResponderInboundInvalidMAPs() throws Exception { Message message = setUpMessage(false, false, false, false, false, false, true); aggregator.setAllowDuplicates(false); aggregator.mediate(message, false); - control.verify(); verifyMessage(message, false, false, false /*check*/); } @@ -280,7 +263,6 @@ public void testResponderInboundInvalidMAPsFault() throws Exception { Message message = setUpMessage(false, false, false, false, false, false, true); aggregator.setAllowDuplicates(false); aggregator.mediate(message, true); - control.verify(); verifyMessage(message, false, false, false /*check*/); } @@ -300,7 +282,6 @@ public void testResponderInboundInvalidMAPsNoMessageIdReqResp() throws Exception Message message = setUpMessage(args); aggregator.setAllowDuplicates(false); aggregator.mediate(message, true); - control.verify(); verifyMessage(message, false, false, false /*check*/); } @@ -320,7 +301,6 @@ public void testResponderInboundNoMessageIdOneWay() throws Exception { Message message = setUpMessage(args); aggregator.setAllowDuplicates(false); aggregator.mediate(message, true); - control.verify(); verifyMessage(message, false, false, false /*check*/); } @@ -328,7 +308,6 @@ public void testResponderInboundNoMessageIdOneWay() throws Exception { public void testResponderOutbound() throws Exception { Message message = setUpMessage(false, true, false); aggregator.mediate(message, false); - control.verify(); verifyMessage(message, false, true, true); } @@ -337,7 +316,6 @@ public void testResponderOutboundZeroLengthAction() throws Exception { Message message = setUpMessage(false, true, false, false, false, false, false); aggregator.mediate(message, false); - control.verify(); verifyMessage(message, false, true, true); } @@ -357,7 +335,6 @@ public void testResponderOutboundNoMessageId() throws Exception { Message message = setUpMessage(args); aggregator.mediate(message, false); - control.verify(); verifyMessage(message, false, true, true); } @@ -377,7 +354,6 @@ public void testResponderOutboundFault() throws Exception { Message message = setUpMessage(args); aggregator.mediate(message, true); - control.verify(); verifyMessage(message, false, true, true); } @@ -385,7 +361,6 @@ public void testResponderOutboundFault() throws Exception { public void testRequestorInbound() throws Exception { Message message = setUpMessage(true, false, false); aggregator.mediate(message, false); - control.verify(); verifyMessage(message, true, false, false /*check*/); } @@ -393,7 +368,6 @@ public void testRequestorInbound() throws Exception { public void testRequestorInboundFault() throws Exception { Message message = setUpMessage(true, false, false); aggregator.mediate(message, true); - control.verify(); verifyMessage(message, true, false, false /*check*/); } @@ -454,7 +428,6 @@ public void testReplyToWithAnonymousAddressRetained() throws Exception { public void testGetActionUriForNormalOp() throws Exception { Message message = setUpMessage(true, true, false, true, true); String action = aggregator.getActionUri(message, false); - control.verify(); assertEquals("http://foo/bar/SEI/opRequest", action); } @@ -481,14 +454,13 @@ public void testGetReplyToUsingBaseAddress() throws Exception { ei.setAddress("http://nowhere.com/bar/foo"); ei.setName(new QName("http://nowhere.com/port", "foo")); Bus bus = new ExtensionManagerBus(); - DestinationFactoryManager dfm = control.createMock(DestinationFactoryManager.class); - DestinationFactory df = control.createMock(DestinationFactory.class); - Destination d = control.createMock(Destination.class); + DestinationFactoryManager dfm = mock(DestinationFactoryManager.class); + DestinationFactory df = mock(DestinationFactory.class); + Destination d = mock(Destination.class); bus.setExtension(dfm, DestinationFactoryManager.class); - EasyMock.expect(dfm.getDestinationFactoryForUri(localReplyTo)).andReturn(df); - EasyMock.expect(df.getDestination( - EasyMock.anyObject(EndpointInfo.class), EasyMock.anyObject(Bus.class))).andReturn(d); - EasyMock.expect(d.getAddress()).andReturn(EndpointReferenceUtils.getEndpointReference(localReplyTo)); + when(dfm.getDestinationFactoryForUri(localReplyTo)).thenReturn(df); + when(df.getDestination(any(EndpointInfo.class), any(Bus.class))).thenReturn(d); + when(d.getAddress()).thenReturn(EndpointReferenceUtils.getEndpointReference(localReplyTo)); Endpoint ep = new EndpointImpl(bus, svc, ei); exchange.put(Endpoint.class, ep); @@ -509,13 +481,11 @@ public void testGetReplyToUsingBaseAddress() throws Exception { setUpMessageProperty(message, CLIENT_ADDRESSING_PROPERTIES, maps); - control.replay(); aggregator.mediate(message, false); AddressingProperties props = (AddressingProperties)message.get(JAXWSAConstants.ADDRESSING_PROPERTIES_OUTBOUND); assertEquals(replyTo, props.getReplyTo().getAddress().getValue()); - control.verify(); } private Message setUpMessage(boolean requestor, @@ -627,24 +597,19 @@ private Message setUpMessage(SetupMessageArgs args) srArgs.fault = args.fault; srArgs.noMessageId = args.noMessageId; - Endpoint endpoint = control.createMock(Endpoint.class); - exchange.getEndpoint(); - EasyMock.expectLastCall().andReturn(endpoint).anyTimes(); + Endpoint endpoint = mock(Endpoint.class); + when(exchange.getEndpoint()).thenReturn(endpoint); setUpResponder(message, exchange, srArgs, endpoint); - endpoint.getOutInterceptors(); - EasyMock.expectLastCall().andReturn(new ArrayList>()).anyTimes(); - Service serv = control.createMock(Service.class); - endpoint.getService(); - EasyMock.expectLastCall().andReturn(serv).anyTimes(); - serv.getOutInterceptors(); - EasyMock.expectLastCall().andReturn(new ArrayList>()).anyTimes(); + when(endpoint.getOutInterceptors()).thenReturn(new ArrayList>()); + Service serv = mock(Service.class); + when(endpoint.getService()).thenReturn(serv); + when(serv.getOutInterceptors()).thenReturn(new ArrayList>()); } - control.replay(); return message; } @@ -652,36 +617,28 @@ private void setUpUsingAddressing(Message message, Exchange exchange, boolean usingAddressing) { setUpMessageExchange(message, exchange); - Endpoint endpoint = control.createMock(Endpoint.class); - endpoint.getOutInterceptors(); - EasyMock.expectLastCall().andReturn(new ArrayList>()).anyTimes(); + Endpoint endpoint = mock(Endpoint.class); + when(endpoint.getOutInterceptors()).thenReturn(new ArrayList>()); setUpExchangeGet(exchange, Endpoint.class, endpoint); - EndpointInfo endpointInfo = control.createMock(EndpointInfo.class); - endpoint.getEndpointInfo(); - EasyMock.expectLastCall().andReturn(endpointInfo).anyTimes(); + EndpointInfo endpointInfo = mock(EndpointInfo.class); + when(endpoint.getEndpointInfo()).thenReturn(endpointInfo); List endpointExts = new ArrayList<>(); - endpointInfo.getExtensors(EasyMock.eq(ExtensibilityElement.class)); - EasyMock.expectLastCall().andReturn(endpointExts).anyTimes(); - BindingInfo bindingInfo = control.createMock(BindingInfo.class); - endpointInfo.getBinding(); - EasyMock.expectLastCall().andReturn(bindingInfo).anyTimes(); - bindingInfo.getExtensors(EasyMock.eq(ExtensibilityElement.class)); - EasyMock.expectLastCall().andReturn(Collections.EMPTY_LIST).anyTimes(); - ServiceInfo serviceInfo = control.createMock(ServiceInfo.class); - endpointInfo.getService(); - EasyMock.expectLastCall().andReturn(serviceInfo).anyTimes(); - serviceInfo.getExtensors(EasyMock.eq(ExtensibilityElement.class)); - EasyMock.expectLastCall().andReturn(Collections.EMPTY_LIST).anyTimes(); + when(endpointInfo.getExtensors(eq(ExtensibilityElement.class))).thenReturn(endpointExts); + BindingInfo bindingInfo = mock(BindingInfo.class); + when(endpointInfo.getBinding()).thenReturn(bindingInfo); + when(bindingInfo.getExtensors(eq(ExtensibilityElement.class))).thenReturn(Collections.emptyList()); + ServiceInfo serviceInfo = mock(ServiceInfo.class); + when(endpointInfo.getService()).thenReturn(serviceInfo); + when(serviceInfo.getExtensors(eq(ExtensibilityElement.class))).thenReturn(Collections.emptyList()); ExtensibilityElement ext = - control.createMock(ExtensibilityElement.class); + mock(ExtensibilityElement.class); if (usingAddressing) { QName elementType = usingAddressing ? Names.WSAW_USING_ADDRESSING_QNAME : new QName(SOAP_NAMESPACE, "encodingStyle"); - ext.getElementType(); - EasyMock.expectLastCall().andReturn(elementType).anyTimes(); + when(ext.getElementType()).thenReturn(elementType); endpointExts.add(ext); } } @@ -728,7 +685,7 @@ private void setUpRequestor(Message message, // mapsInContext // ? maps // : new AddressingPropertiesImpl()); - //EasyMock.expectLastCall().andReturn(null); + //whenLastCall().thenReturn(null); } private void setUpResponder(Message message, @@ -815,7 +772,7 @@ private void setUpResponder(Message message, //EasyMock.reportMatcher(new MAPMatcher()); //message.put(SERVER_ADDRESSING_PROPERTIES_OUTBOUND, // new AddressingPropertiesImpl()); - //EasyMock.expectLastCall().andReturn(null); + //whenLastCall().thenReturn(null); } } @@ -824,18 +781,15 @@ private void setUpRebase(Message message, Exchange exchange, Endpoint endpoint) setUpMessageProperty(message, "org.apache.cxf.ws.addressing.partial.response.sent", Boolean.FALSE); - Binding binding = control.createMock(Binding.class); - endpoint.getBinding(); - EasyMock.expectLastCall().andReturn(binding).anyTimes(); + Binding binding = mock(Binding.class); + when(endpoint.getBinding()).thenReturn(binding); Message partialResponse = getMessage(); - binding.createMessage(EasyMock.isA(Message.class)); - EasyMock.expectLastCall().andReturn(partialResponse); + when(binding.createMessage(isA(Message.class))).thenReturn(partialResponse); - Destination target = control.createMock(Destination.class); + Destination target = mock(Destination.class); setUpMessageDestination(message, target); - Conduit backChannel = control.createMock(Conduit.class); - target.getBackChannel(EasyMock.eq(message)); - EasyMock.expectLastCall().andReturn(backChannel); + Conduit backChannel = mock(Conduit.class); + when(target.getBackChannel(eq(message))).thenReturn(backChannel); // REVISIT test interceptor chain setup & send } @@ -851,13 +805,12 @@ private void setUpOutbound(Message message, Exchange exchange, boolean outbound, private void setUpConduit(Message message, Exchange exchange) { setUpMessageExchange(message, exchange); - Conduit conduit = EasyMock.createMock(Conduit.class); + Conduit conduit = mock(Conduit.class); setUpExchangeConduit(message, exchange, conduit); EndpointReferenceType to = ContextUtils.WSA_OBJECT_FACTORY.createEndpointReferenceType(); to.setAddress(ContextUtils.getAttributedURI(expectedTo)); - conduit.getTarget(); - EasyMock.expectLastCall().andReturn(to).anyTimes(); + when(conduit.getTarget()).thenReturn(to); } private void setUpMethod(Message message, Exchange exchange, Method method) { @@ -867,15 +820,15 @@ private void setUpMethod(Message message, Exchange exchange, Method method) { "opResponse", "opFault", method); setUpExchangeGet(exchange, BindingOperationInfo.class, bindingOpInfo); - EasyMock.expect(exchange.getBindingOperationInfo()).andReturn(bindingOpInfo).anyTimes(); + when(exchange.getBindingOperationInfo()).thenReturn(bindingOpInfo); // Usual fun with EasyMock not always working as expected //BindingOperationInfo bindingOpInfo = // EasyMock.createMock(BindingOperationInfo.class); //OperationInfo opInfo = EasyMock.createMock(OperationInfo.class); //bindingOpInfo.getOperationInfo(); - //EasyMock.expectLastCall().andReturn(opInfo); + //whenLastCall().thenReturn(opInfo); //opInfo.getProperty(EasyMock.eq(Method.class.getName())); - //EasyMock.expectLastCall().andReturn(method); + //whenLastCall().thenReturn(method); } private BindingOperationInfo setUpBindingOperationInfo(String nsuri, @@ -896,49 +849,45 @@ private BindingOperationInfo setUpBindingOperationInfo(String nsuri, } private Message getMessage() { - //return control.createMock(Message.class); + //return mock(Message.class); return new MessageImpl(); } private Exchange getExchange() { - Bus bus = control.createMock(Bus.class); - bus.getExtension(PhaseManager.class); - EasyMock.expectLastCall().andReturn(new PhaseManagerImpl()).anyTimes(); - - Exchange exchange = control.createMock(Exchange.class); - exchange.getBus(); - EasyMock.expectLastCall().andReturn(bus).anyTimes(); - EasyMock.expect(exchange.isEmpty()).andReturn(true).anyTimes(); + Bus bus = mock(Bus.class); + when(bus.getExtension(PhaseManager.class)).thenReturn(new PhaseManagerImpl()); + + Exchange exchange = mock(Exchange.class); + when(exchange.getBus()).thenReturn(bus); + when(exchange.isEmpty()).thenReturn(true); return exchange; } private void setUpMessageProperty(Message message, String key, Object value) { //message.get(key); - //EasyMock.expectLastCall().andReturn(value); + //whenLastCall().thenReturn(value); message.put(key, value); } private void setUpMessageExchange(Message message, Exchange exchange) { //message.getExchange(); - //EasyMock.expectLastCall().andReturn(exchange); + //whenLastCall().thenReturn(exchange); message.setExchange(exchange); } private void setUpMessageDestination(Message message, Destination target) { //message.getDestination(); - //EasyMock.expectLastCall().andReturn(target); + //whenLastCall().thenReturn(target); ((MessageImpl)message).setDestination(target); } private void setUpExchangeGet(Exchange exchange, Class clz, T value) { - exchange.get(clz); - EasyMock.expectLastCall().andReturn(value).anyTimes(); + when(exchange.get(clz)).thenReturn(value); //exchange.put(Endpoint.class, value); } private void setUpExchangeOneway(Exchange exchange, boolean oneway) { - exchange.isOneWay(); - EasyMock.expectLastCall().andReturn(oneway).anyTimes(); + when(exchange.isOneWay()).thenReturn(oneway); //exchange.setOneWay(oneway); } @@ -947,11 +896,10 @@ private void setUpExchangeOutbound(Exchange exchange, boolean outbound, boolean fault) { if (fault) { - exchange.getOutFaultMessage(); + when(exchange.getOutFaultMessage()).thenReturn(outbound ? message : null); } else { - exchange.getOutMessage(); + when(exchange.getOutMessage()).thenReturn(outbound ? message : null); } - EasyMock.expectLastCall().andReturn(outbound ? message : null).anyTimes(); //exchange.setOutMessage(outbound ? message : new MessageImpl()); } @@ -959,7 +907,7 @@ private void setUpExchangeConduit(Message message, Exchange exchange, Conduit conduit) { //exchange.getConduit(message); - //EasyMock.expectLastCall().andReturn(conduit); + //whenLastCall().thenReturn(conduit); //exchange.setConduit(conduit); } diff --git a/rt/ws/addr/src/test/java/org/apache/cxf/ws/addressing/soap/DecoupledFaultHandlerTest.java b/rt/ws/addr/src/test/java/org/apache/cxf/ws/addressing/soap/DecoupledFaultHandlerTest.java index a8539e0202f..4fd2e79ab96 100644 --- a/rt/ws/addr/src/test/java/org/apache/cxf/ws/addressing/soap/DecoupledFaultHandlerTest.java +++ b/rt/ws/addr/src/test/java/org/apache/cxf/ws/addressing/soap/DecoupledFaultHandlerTest.java @@ -31,7 +31,6 @@ import org.apache.cxf.ws.addressing.ContextUtils; import org.apache.cxf.ws.addressing.EndpointReferenceType; -import org.easymock.EasyMock; import org.junit.Test; import static org.junit.Assert.assertEquals; @@ -39,6 +38,7 @@ import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertSame; import static org.junit.Assert.assertTrue; +import static org.mockito.Mockito.mock; public class DecoupledFaultHandlerTest { @@ -47,7 +47,7 @@ public void testOnewayFault() { DecoupledFaultHandler handler = new DecoupledFaultHandler() { protected Destination createDecoupledDestination(Exchange exchange, EndpointReferenceType epr) { assertEquals("http://bar", epr.getAddress().getValue()); - return EasyMock.createMock(Destination.class); + return mock(Destination.class); } }; diff --git a/rt/ws/addr/src/test/java/org/apache/cxf/ws/addressing/soap/MAPCodecTest.java b/rt/ws/addr/src/test/java/org/apache/cxf/ws/addressing/soap/MAPCodecTest.java index b50b21119bf..c3b000a03d5 100644 --- a/rt/ws/addr/src/test/java/org/apache/cxf/ws/addressing/soap/MAPCodecTest.java +++ b/rt/ws/addr/src/test/java/org/apache/cxf/ws/addressing/soap/MAPCodecTest.java @@ -54,8 +54,6 @@ import org.apache.cxf.ws.addressing.v200408.AttributedURI; import org.apache.cxf.ws.addressing.v200408.Relationship; -import org.easymock.EasyMock; -import org.easymock.IMocksControl; import org.junit.After; import org.junit.Before; import org.junit.Test; @@ -70,11 +68,12 @@ import static org.junit.Assert.assertSame; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; public class MAPCodecTest { private MAPCodec codec; - private IMocksControl control; private QName[] expectedNames; private Object[] expectedValues; private String expectedNamespaceURI; @@ -87,7 +86,6 @@ public class MAPCodecTest { @Before public void setUp() { codec = new MAPCodec(); - control = EasyMock.createNiceControl(); } @After @@ -117,7 +115,6 @@ public void testRequestorInboundNonNative200403() throws Exception { String uri = Names200403.WSA_NAMESPACE_NAME; SoapMessage message = setUpMessage(true, false, false, false, uri); codec.handleMessage(message); - control.verify(); verifyMessage(message, true, false, false); } @@ -126,7 +123,6 @@ public void testResponderInboundNonNative200403() throws Exception { String uri = Names200403.WSA_NAMESPACE_NAME; SoapMessage message = setUpMessage(false, false, false, false, uri); codec.handleMessage(message); - control.verify(); verifyMessage(message, false, false, false); } @@ -135,7 +131,6 @@ public void testRequestorOutboundNonNative200403() throws Exception { String uri = Names200403.WSA_NAMESPACE_NAME; SoapMessage message = setUpMessage(true, true, false, false, uri); codec.handleMessage(message); - control.verify(); verifyMessage(message, true, true, false); } @@ -144,7 +139,6 @@ public void testResponderOutboundNonNative200403() throws Exception { String uri = Names200403.WSA_NAMESPACE_NAME; SoapMessage message = setUpMessage(false, true, false, false, uri); codec.handleMessage(message); - control.verify(); verifyMessage(message, false, true, false); } @@ -152,7 +146,6 @@ public void testResponderOutboundNonNative200403() throws Exception { public void testRequestorOutbound() throws Exception { SoapMessage message = setUpMessage(true, true); codec.handleMessage(message); - control.verify(); verifyMessage(message, true, true, true); } @@ -161,7 +154,6 @@ public void testRequestorOutboundPreExistingSOAPAction() throws Exception { SoapMessage message = setUpMessage(true, true, false, true); codec.handleMessage(message); verifyAction(); - control.verify(); verifyMessage(message, true, true, true); } @@ -170,7 +162,6 @@ public void testRequestorOutboundNonNative() throws Exception { String uri = Names200408.WSA_NAMESPACE_NAME; SoapMessage message = setUpMessage(true, true, false, false, uri); codec.handleMessage(message); - control.verify(); verifyMessage(message, true, true, false); } @@ -178,7 +169,6 @@ public void testRequestorOutboundNonNative() throws Exception { public void testResponderInbound() throws Exception { SoapMessage message = setUpMessage(false, false); codec.handleMessage(message); - control.verify(); verifyMessage(message, false, false, true); } @@ -186,7 +176,6 @@ public void testResponderInbound() throws Exception { public void testResponderOutbound() throws Exception { SoapMessage message = setUpMessage(false, true); codec.handleMessage(message); - control.verify(); verifyMessage(message, false, true, true); } @@ -199,7 +188,6 @@ public void testResponderInboundWithRelatesTo() throws Exception { codec.uncorrelatedExchanges.remove(key); } codec.handleMessage(message); - control.verify(); verifyMessage(message, false, false, false); } @@ -208,7 +196,6 @@ public void testResponderInboundNonNative() throws Exception { String uri = Names200408.WSA_NAMESPACE_NAME; SoapMessage message = setUpMessage(false, false, false, false, uri); codec.handleMessage(message); - control.verify(); verifyMessage(message, false, false, false); } @@ -221,7 +208,6 @@ public void testResponderOutboundInvalidMAP() throws Exception { } catch (SoapFault sfe) { assertEquals("unexpected fault string", "Duplicate Message ID urn:uuid:12345", sfe.getMessage()); } - control.verify(); verifyMessage(message, false, true, true); } @@ -230,7 +216,6 @@ public void testResponderOutboundPreExistingSOAPAction() throws Exception { SoapMessage message = setUpMessage(false, true, false, true); codec.handleMessage(message); verifyAction(); - control.verify(); verifyMessage(message, false, true, true); } @@ -239,7 +224,6 @@ public void testResponderOutboundNonNative() throws Exception { String uri = Names200408.WSA_NAMESPACE_NAME; SoapMessage message = setUpMessage(false, true, false, false, uri); codec.handleMessage(message); - control.verify(); verifyMessage(message, false, true, false); } @@ -247,7 +231,6 @@ public void testResponderOutboundNonNative() throws Exception { public void testRequestorInbound() throws Exception { SoapMessage message = setUpMessage(true, false); codec.handleMessage(message); - control.verify(); verifyMessage(message, true, false, true); } @@ -256,7 +239,6 @@ public void testRequestorInboundNonNative() throws Exception { String uri = Names200408.WSA_NAMESPACE_NAME; SoapMessage message = setUpMessage(true, false, false, false, uri); codec.handleMessage(message); - control.verify(); verifyMessage(message, true, false, false); } @@ -265,7 +247,6 @@ public void testRequestorInboundNonReply() throws Exception { nonReplyRelationship = "wsat:correlatedOneway"; SoapMessage message = setUpMessage(true, false); codec.handleMessage(message); - control.verify(); verifyMessage(message, true, false, true); } @@ -275,7 +256,6 @@ public void testRequestorInboundNonNativeNonReply() throws Exception { String uri = Names200408.WSA_NAMESPACE_NAME; SoapMessage message = setUpMessage(true, false, false, false, uri); codec.handleMessage(message); - control.verify(); verifyMessage(message, true, false, false); } @@ -308,14 +288,14 @@ private SoapMessage setUpMessage(boolean requestor, boolean outbound, boolean in message.put(REQUESTOR_ROLE, Boolean.valueOf(requestor)); String mapProperty = getMAPProperty(requestor, outbound); AddressingProperties maps = getMAPs(requestor, outbound, exposeAs); - final Element header = control.createMock(Element.class); + final Element header = mock(Element.class); codec.setHeaderFactory(new MAPCodec.HeaderFactory() { public Element getHeader(SoapVersion version) { return header; } }); List
headers = message.getHeaders(); - JAXBContext jaxbContext = control.createMock(JAXBContext.class); + JAXBContext jaxbContext = mock(JAXBContext.class); ContextJAXBUtils.setJAXBContext(jaxbContext); Names200408.setJAXBContext(jaxbContext); Names200403.setJAXBContext(jaxbContext); @@ -324,7 +304,6 @@ public Element getHeader(SoapVersion version) { } else { setUpDecode(message, headers, maps, mapProperty, requestor); } - control.replay(); return message; } @@ -350,9 +329,8 @@ private void setUpEncode(boolean requestor, SoapMessage message, Element header, private void setUpDecode(SoapMessage message, List
headers, AddressingProperties maps, String mapProperty, boolean requestor) throws Exception { - Unmarshaller unmarshaller = control.createMock(Unmarshaller.class); - ContextJAXBUtils.getJAXBContext().createUnmarshaller(); - EasyMock.expectLastCall().andReturn(unmarshaller); + Unmarshaller unmarshaller = mock(Unmarshaller.class); + when(ContextJAXBUtils.getJAXBContext().createUnmarshaller()).thenReturn(unmarshaller); String uri = maps.getNamespaceURI(); boolean exposedAsNative = Names.WSA_NAMESPACE_NAME.equals(uri); boolean exposedAs200408 = Names200408.WSA_NAMESPACE_NAME.equals(uri); @@ -386,17 +364,14 @@ private void setUpDecode(SoapMessage message, List
headers, AddressingPr private void setUpHeaderDecode(List
headers, String uri, String name, Class clz, int index, Unmarshaller unmarshaller) throws Exception { - Element headerElement = control.createMock(Element.class); + Element headerElement = mock(Element.class); headers.add(new Header(new QName(uri, name), headerElement)); - headerElement.getNamespaceURI(); - EasyMock.expectLastCall().andReturn(uri); - headerElement.getLocalName(); - EasyMock.expectLastCall().andReturn(name); + when(headerElement.getNamespaceURI()).thenReturn(uri); + when(headerElement.getLocalName()).thenReturn(name); Object v = expectedValues[index]; @SuppressWarnings("unchecked") JAXBElement jaxbElement = new JAXBElement<>(new QName(uri, name), (Class)clz, clz.cast(v)); - unmarshaller.unmarshal(headerElement, clz); - EasyMock.expectLastCall().andReturn(jaxbElement); + when(unmarshaller.unmarshal(headerElement, clz)).thenAnswer(i -> jaxbElement); } private void setUpOutbound(Message message, boolean outbound) {