use of org.apache.cxf.systest.ws.util.MessageFlow in project cxf by apache.
the class RM10PolicyWsdlTest method testUsingRM.
@Test
public void testUsingRM() throws Exception {
setUpBus(PORT);
ReliableGreeterService gs = new ReliableGreeterService();
Greeter greeter = gs.getGreeterPort();
updateAddressPort(greeter, PORT);
LOG.fine("Created greeter client.");
ConnectionHelper.setKeepAliveConnection(greeter, true);
// two-way
assertEquals("CXF", greeter.greetMe("cxf"));
// oneway
greeter.greetMeOneWay("CXF");
try {
greeter.pingMe();
} catch (PingMeFault ex) {
fail("First invocation should have succeeded.");
}
try {
greeter.pingMe();
fail("Expected PingMeFault not thrown.");
} catch (PingMeFault ex) {
assertEquals(2, ex.getFaultInfo().getMajor());
assertEquals(1, ex.getFaultInfo().getMinor());
}
MessageRecorder mr = new MessageRecorder(outRecorder, inRecorder);
mr.awaitMessages(5, 4, 5000);
// mr.awaitMessages(5, 9, 5000);
MessageFlow mf = new MessageFlow(outRecorder.getOutboundMessages(), inRecorder.getInboundMessages(), "http://schemas.xmlsoap.org/ws/2004/08/addressing", "http://schemas.xmlsoap.org/ws/2005/02/rm");
mf.verifyMessages(5, true);
String[] expectedActions = new String[] { RM10Constants.INSTANCE.getCreateSequenceAction(), GREETME_ACTION, GREETMEONEWAY_ACTION, PINGME_ACTION, PINGME_ACTION };
mf.verifyActions(expectedActions, true);
mf.verifyMessageNumbers(new String[] { null, "1", "2", "3", "4" }, true);
mf.verifyLastMessage(new boolean[] { false, false, false, false, false }, true);
mf.verifyAcknowledgements(new boolean[] { false, false, true, false, true }, true);
mf.verifyMessages(4, false);
// mf.verifyMessages(9, false);
// mf.verifyPartialResponses(5);
// mf.purgePartialResponses();
expectedActions = new String[] { RM10Constants.INSTANCE.getCreateSequenceResponseAction(), GREETME_RESPONSE_ACTION, PINGME_RESPONSE_ACTION, GREETER_FAULT_ACTION };
mf.verifyActions(expectedActions, false);
mf.verifyMessageNumbers(new String[] { null, "1", "2", "3" }, false);
mf.verifyLastMessage(new boolean[] { false, false, false, false }, false);
mf.verifyAcknowledgements(new boolean[] { false, true, true, true }, false);
((Closeable) greeter).close();
}
use of org.apache.cxf.systest.ws.util.MessageFlow in project cxf by apache.
the class RM12PolicyWsdlTest method testUsingRM12.
@Test
public void testUsingRM12() throws Exception {
setUpBus(PORT);
Reliable12GreeterService gs = new Reliable12GreeterService();
Greeter greeter = gs.getGreeterPort();
updateAddressPort(greeter, PORT);
ConnectionHelper.setKeepAliveConnection(greeter, true);
LOG.fine("Created greeter client.");
// two-way
assertEquals("CXF", greeter.greetMe("cxf"));
// oneway
greeter.greetMeOneWay("CXF");
try {
greeter.pingMe();
} catch (PingMeFault ex) {
fail("First invocation should have succeeded.");
}
try {
greeter.pingMe();
fail("Expected PingMeFault not thrown.");
} catch (PingMeFault ex) {
assertEquals(2, ex.getFaultInfo().getMajor());
assertEquals(1, ex.getFaultInfo().getMinor());
}
MessageRecorder mr = new MessageRecorder(outRecorder, inRecorder);
mr.awaitMessages(5, 4, 5000);
// mr.awaitMessages(5, 9, 5000);
MessageFlow mf = new MessageFlow(outRecorder.getOutboundMessages(), inRecorder.getInboundMessages(), "http://www.w3.org/2005/08/addressing", "http://docs.oasis-open.org/ws-rx/wsrm/200702");
mf.verifyMessages(5, true);
String[] expectedActions = new String[] { RM11Constants.INSTANCE.getCreateSequenceAction(), GREETME_ACTION, GREETMEONEWAY_ACTION, PINGME_ACTION, PINGME_ACTION };
mf.verifyActions(expectedActions, true);
mf.verifyMessageNumbers(new String[] { null, "1", "2", "3", "4" }, true);
mf.verifyLastMessage(new boolean[] { false, false, false, false, false }, true);
mf.verifyAcknowledgements(new boolean[] { false, false, true, false, true }, true);
mf.verifyMessages(4, false);
// mf.verifyMessages(9, false);
// mf.verifyPartialResponses(5);
// mf.purgePartialResponses();
expectedActions = new String[] { RM11Constants.INSTANCE.getCreateSequenceResponseAction(), GREETME_RESPONSE_ACTION, PINGME_RESPONSE_ACTION, GREETER_FAULT_ACTION };
mf.verifyActions(expectedActions, false);
mf.verifyMessageNumbers(new String[] { null, "1", "2", "3" }, false);
mf.verifyLastMessage(new boolean[] { false, false, false, false }, false);
mf.verifyAcknowledgements(new boolean[] { false, true, true, true }, false);
((Closeable) greeter).close();
}
use of org.apache.cxf.systest.ws.util.MessageFlow in project cxf by apache.
the class AddressingOptionalPolicyTest method testNotUsingAddressing.
@Test
public void testNotUsingAddressing() throws Exception {
SpringBusFactory bf = new SpringBusFactory();
bus = bf.createBus("org/apache/cxf/systest/ws/policy/addr-optional.xml");
BusFactory.setDefaultBus(bus);
InMessageRecorder in = new InMessageRecorder();
bus.getInInterceptors().add(in);
OutMessageRecorder out = new OutMessageRecorder();
bus.getOutInterceptors().add(out);
bus.getExtension(PolicyEngine.class).setAlternativeSelector(new MinimalAlternativeSelector());
BasicGreeterService gs = new BasicGreeterService();
final Greeter greeter = gs.getGreeterPort();
updateAddressPort(greeter, PORT);
LOG.fine("Created greeter client.");
ConnectionHelper.setKeepAliveConnection(greeter, true);
// oneway
greeter.greetMeOneWay("CXF");
// two-way
assertEquals("CXF", greeter.greetMe("cxf"));
try {
greeter.pingMe();
} catch (PingMeFault ex) {
fail("First invocation should have succeeded.");
}
try {
greeter.pingMe();
fail("Expected PingMeFault not thrown.");
} catch (PingMeFault ex) {
assertEquals(2, ex.getFaultInfo().getMajor());
assertEquals(1, ex.getFaultInfo().getMinor());
}
MessageFlow mf = new MessageFlow(out.getOutboundMessages(), in.getInboundMessages());
for (int i = 0; i < 3; i++) {
mf.verifyNoHeader(RMUtils.getAddressingConstants().getMessageIDQName(), true, i);
mf.verifyNoHeader(RMUtils.getAddressingConstants().getMessageIDQName(), false, i);
}
((Closeable) greeter).close();
}
use of org.apache.cxf.systest.ws.util.MessageFlow in project cxf by apache.
the class AddressingOptionalPolicyTest method testUsingAddressing.
@Test
public void testUsingAddressing() throws Exception {
SpringBusFactory bf = new SpringBusFactory();
bus = bf.createBus("org/apache/cxf/systest/ws/policy/addr-optional.xml");
BusFactory.setDefaultBus(bus);
InMessageRecorder in = new InMessageRecorder();
bus.getInInterceptors().add(in);
OutMessageRecorder out = new OutMessageRecorder();
bus.getOutInterceptors().add(out);
BasicGreeterService gs = new BasicGreeterService();
final Greeter greeter = gs.getGreeterPort();
updateAddressPort(greeter, PORT);
LOG.fine("Created greeter client.");
ConnectionHelper.setKeepAliveConnection(greeter, true);
// oneway
greeter.greetMeOneWay("CXF");
// two-way
assertEquals("CXF", greeter.greetMe("cxf"));
try {
greeter.pingMe();
} catch (PingMeFault ex) {
fail("First invocation should have succeeded.");
}
try {
greeter.pingMe();
fail("Expected PingMeFault not thrown.");
} catch (PingMeFault ex) {
assertEquals(2, ex.getFaultInfo().getMajor());
assertEquals(1, ex.getFaultInfo().getMinor());
}
MessageFlow mf = new MessageFlow(out.getOutboundMessages(), in.getInboundMessages());
for (int i = 0; i < 3; i++) {
mf.verifyHeader(RMUtils.getAddressingConstants().getMessageIDQName(), true, i);
mf.verifyHeader(RMUtils.getAddressingConstants().getMessageIDQName(), false, i);
}
((Closeable) greeter).close();
}
use of org.apache.cxf.systest.ws.util.MessageFlow in project cxf by apache.
the class RMPolicyTest method testUsingRM.
@Test
public void testUsingRM() throws Exception {
SpringBusFactory bf = new SpringBusFactory();
bus = bf.createBus("org/apache/cxf/systest/ws/policy/rm.xml");
BusFactory.setDefaultBus(bus);
OutMessageRecorder outRecorder = new OutMessageRecorder();
bus.getOutInterceptors().add(outRecorder);
InMessageRecorder inRecorder = new InMessageRecorder();
bus.getInInterceptors().add(inRecorder);
BasicGreeterService gs = new BasicGreeterService();
final Greeter greeter = gs.getGreeterPort();
updateAddressPort(greeter, PORT);
LOG.fine("Created greeter client.");
ConnectionHelper.setKeepAliveConnection(greeter, true);
// two-way
assertEquals("CXF", greeter.greetMe("cxf"));
// oneway
greeter.greetMeOneWay("CXF");
try {
greeter.pingMe();
} catch (PingMeFault ex) {
fail("First invocation should have succeeded.");
}
try {
greeter.pingMe();
fail("Expected PingMeFault not thrown.");
} catch (PingMeFault ex) {
assertEquals(2, ex.getFaultInfo().getMajor());
assertEquals(1, ex.getFaultInfo().getMinor());
}
MessageRecorder mr = new MessageRecorder(outRecorder, inRecorder);
mr.awaitMessages(5, 4, 5000);
MessageFlow mf = new MessageFlow(outRecorder.getOutboundMessages(), inRecorder.getInboundMessages(), Names200408.WSA_NAMESPACE_NAME, RM10Constants.NAMESPACE_URI);
mf.verifyMessages(5, true);
String[] expectedActions = new String[] { RM10Constants.INSTANCE.getCreateSequenceAction(), GREETME_ACTION, GREETMEONEWAY_ACTION, PINGME_ACTION, PINGME_ACTION };
mf.verifyActions(expectedActions, true);
mf.verifyMessageNumbers(new String[] { null, "1", "2", "3", "4" }, true);
mf.verifyLastMessage(new boolean[] { false, false, false, false, false }, true);
mf.verifyAcknowledgements(new boolean[] { false, false, true, false, true }, true);
mf.verifyMessages(4, false);
// mf.verifyMessages(9, false);
// mf.verifyPartialResponses(5);
// mf.purgePartialResponses();
expectedActions = new String[] { RM10Constants.INSTANCE.getCreateSequenceResponseAction(), GREETME_RESPONSE_ACTION, PINGME_RESPONSE_ACTION, GREETER_FAULT_ACTION };
mf.verifyActions(expectedActions, false);
mf.verifyMessageNumbers(new String[] { null, "1", "2", "3" }, false);
mf.verifyLastMessage(new boolean[] { false, false, false, false }, false);
mf.verifyAcknowledgements(new boolean[] { false, true, true, true }, false);
((Closeable) greeter).close();
}
Aggregations