@Test(priority = 1, groups = { "wso2.esb" }, description = "Google Contacts {createContact} integration test with optional parameters.")
public void testCreateContactWithOptionalParameters() throws Exception {
SOAPEnvelope esbSoapResponse = sendSOAPRequest(proxyUrl, "esb_createContact_optional.xml");
Assert.assertTrue(esbSoapResponse.getBody().toString().contains("atom:id"));
String xPathExp = "string(//atom:id/text())";
String idUrl = (String) xPathEvaluate(esbSoapResponse, xPathExp, nameSpaceMap);
contactId = idUrl.substring(idUrl.lastIndexOf("/") + 1, idUrl.length());
ContactEntry directResponseObject = directInvoker.retrieveSingleContact(contactId);
Assert.assertEquals(idUrl, directResponseObject.getId());
Assert.assertEquals((String) xPathEvaluate(esbSoapResponse, "string(//gd:givenName/text())", nameSpaceMap), directResponseObject
.getName().getGivenName().getValue());
Assert.assertEquals((String) xPathEvaluate(esbSoapResponse, "string(//gContact:birthday/@when)", nameSpaceMap), directResponseObject
.getBirthday().getValue());
}