use of org.apache.cxf.greeter_control.ReliableGreeterService 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();
}
Aggregations