m_parser.parse(new StringInput(POLYMORPHIC_COLLECTION_TEST), m_polymorphicCollectionMessage);
}
public void testParseInputMessageTable()
{
MessageTable table = new MessageTable();
table.addMessage(m_patient);
table.addMessage(m_xds);
m_parser.initializeMessageTable(table);
TransferObject tobj = m_parser.parse(new StringInput(PATIENT), table);
TransferObject player = (TransferObject)tobj.getValue("player");
assertEquals("My1", player.getValue("firstName"));
assertEquals("Test", player.getValue("lastName"));
TransferObject id = (TransferObject)((List)player.getValue("id")).get(0);
assertEquals("XML_PatientDemographics", tobj.getClassName());
assertEquals("OHIP", id.getValue("type"));
assertEquals("111222333", id.getValue("id"));
table = new MessageTable();
table.addMessage(m_patientSOAP);
m_parser.initializeMessageTable(table);
tobj = m_parser.parse(new StringInput(PATIENT_SOAP), table);
player = (TransferObject)tobj.getValue("player");
assertEquals("My1", player.getValue("firstName"));
assertEquals("Test", player.getValue("lastName"));
id = (TransferObject)((List)player.getValue("id")).get(0);
assertEquals("SOAP_PatientDemographics", tobj.getClassName());
assertEquals("OHIP", id.getValue("type"));
assertEquals("111222333", id.getValue("id"));
try
{
m_parser.parse(new StringInput(SOAP_FAULT), table);
fail("Expected SOAPFaultException");
}
catch (SOAPFaultException e)
{
assertEquals("123", e.getFaultCode());
assertEquals("This is a minor SOAP fault", e.getFaultString());
assertEquals("not-me", e.getFaultActor());
}
// Try parsing a message that is mapped to SOAP Fault
table.addMessage(m_faultMessage);
m_parser.initializeMessageTable(table);
tobj = m_parser.parse(new StringInput(SOAP_FAULT), table);
assertEquals(m_faultMessage.getName(), tobj.getClassName());
assertEquals("123", tobj.getValue("code"));
assertEquals("This is a minor SOAP fault", tobj.getValue("msg"));