@Test(dataProvider = "SchemaValidationEnabled") public void doTest(boolean schemaValidationEnabled) throws Exception { CougarHelpers helpers = new CougarHelpers(); try { CougarManager cougarManager = CougarManager.getInstance(); helpers.setSOAPSchemaValidationEnabled(schemaValidationEnabled); // Create the SOAP request as an XML Document (with a complex map parameter with complex entry // missing mandatory fields) XMLHelpers xMLHelpers1 = new XMLHelpers(); Document createAsDocument1 = xMLHelpers1.getXMLObjectFromString( "<MapOfComplexOperationRequest><inputMap><entry key=\"aaa\"><ComplexObject/></entry></inputMap></MapOfComplexOperationRequest>"); // Set up the Http Call Bean to make the request CougarManager cougarManager2 = CougarManager.getInstance(); HttpCallBean getNewHttpCallBean5 = cougarManager2.getNewHttpCallBean("87.248.113.14"); CougarManager cougarManager5 = cougarManager2; getNewHttpCallBean5.setServiceName("Baseline"); getNewHttpCallBean5.setVersion("v2"); // Set the created SOAP request as the PostObject getNewHttpCallBean5.setPostObjectForRequestType(createAsDocument1, "SOAP"); // Get current time for getting log entries later Timestamp getTimeAsTimeStamp10 = new Timestamp(System.currentTimeMillis()); // Make the SOAP call to the operation cougarManager5.makeSoapCougarHTTPCalls(getNewHttpCallBean5); // Create the expected response object as an XML document (fault) XMLHelpers xMLHelpers4 = new XMLHelpers(); Document createAsDocument11 = xMLHelpers4.getXMLObjectFromString( "<soapenv:Fault><faultcode>soapenv:Client</faultcode><faultstring>DSC-0018</faultstring><detail/></soapenv:Fault>"); // Convert the expected response to SOAP for comparison with the actual response Map<String, Object> convertResponseToSOAP12 = cougarManager5.convertResponseToSOAP(createAsDocument11, getNewHttpCallBean5); // Check the response is as expected HttpResponseBean response5 = getNewHttpCallBean5.getResponseObjectsByEnum( com.betfair.testing.utils.cougar.enums.CougarMessageProtocolResponseTypeEnum.SOAP); AssertionUtils.multiAssertEquals( convertResponseToSOAP12.get("SOAP"), response5.getResponseObject()); // generalHelpers.pauseTest(2000L); // Check the log entries are as expected cougarManager5.verifyAccessLogEntriesAfterDate( getTimeAsTimeStamp10, new AccessLogRequirement("87.248.113.14", "/BaselineService/v2", "BadRequest")); } finally { helpers.setSOAPSchemaValidationEnabled(true); } }
@Test public void doTest() throws Exception { // Create the SOAP request as an XML Document (with a dateTimeSet parameter containing a date // with a time set to 24:00:00) XMLHelpers xMLHelpers1 = new XMLHelpers(); Document createAsDocument1 = xMLHelpers1.getXMLObjectFromString( "<DateTimeSetOperationRequest><message><dateTimeSet><Date>2009-06-02T24:00:00.000Z</Date><Date>2009-06-03T24:00:00.000Z</Date></dateTimeSet></message></DateTimeSetOperationRequest>"); // Set up the Http Call Bean to make the request CougarManager cougarManager2 = CougarManager.getInstance(); HttpCallBean hbean = cougarManager2.getNewHttpCallBean("87.248.113.14"); CougarManager hinstance = cougarManager2; hbean.setServiceName("Baseline"); hbean.setVersion("v2"); // Set the created SOAP request as the PostObject hbean.setPostObjectForRequestType(createAsDocument1, "SOAP"); // Get current time for getting log entries later Timestamp getTimeAsTimeStamp7 = new Timestamp(System.currentTimeMillis()); // Make the SOAP call to the operation hinstance.makeSoapCougarHTTPCalls(hbean); // Create the expected response object as an XML document (fault) XMLHelpers xMLHelpers4 = new XMLHelpers(); Document createAsDocument9 = xMLHelpers4.getXMLObjectFromString( "<soapenv:Fault><faultcode>soapenv:Client</faultcode><faultstring>DSC-0044</faultstring><detail/></soapenv:Fault>"); // Convert the expected response to SOAP for comparison with actual response Map<String, Object> convertResponseToSOAP10 = hinstance.convertResponseToSOAP(createAsDocument9, hbean); // Check the response is as expected HttpResponseBean response5 = hbean.getResponseObjectsByEnum( com.betfair.testing.utils.cougar.enums.CougarMessageProtocolResponseTypeEnum.SOAP); AssertionUtils.multiAssertEquals( convertResponseToSOAP10.get("SOAP"), response5.getResponseObject()); // generalHelpers.pauseTest(3000L); // Check the log entries are as expected CougarManager cougarManager8 = CougarManager.getInstance(); cougarManager8.verifyAccessLogEntriesAfterDate( getTimeAsTimeStamp7, new AccessLogRequirement("87.248.113.14", "/BaselineService/v2", "BadRequest")); }
// ERROR: 'org.xml.sax.SAXParseException; cvc-complex-type.2.4.b: The content of element // 'bas:objects' is not complete. One of // '{"http://www.betfair.com/servicetypes/v2/Baseline/":ComplexObject}' is expected.' @Test public void doTest() throws Exception { // Create the SOAP request as an XML Document XMLHelpers xMLHelpers1 = new XMLHelpers(); Document createAsDocument1 = xMLHelpers1.getXMLObjectFromString( "<TestLargePostRequest><largeRequest><size>2</size><objects><ComplexObject><value1>34</value1></ComplexObject></objects><oddOrEven>ODD</oddOrEven></largeRequest></TestLargePostRequest>"); // Set up the Http Call Bean to make the request CougarManager cougarManager2 = CougarManager.getInstance(); HttpCallBean getNewHttpCallBean2 = cougarManager2.getNewHttpCallBean("87.248.113.14"); cougarManager2 = cougarManager2; cougarManager2.setCougarFaultControllerJMXMBeanAttrbiute("DetailedFaults", "false"); getNewHttpCallBean2.setServiceName("Baseline"); getNewHttpCallBean2.setVersion("v2"); // Set the created SOAP request as the PostObject getNewHttpCallBean2.setPostObjectForRequestType(createAsDocument1, "SOAP"); // Get current time for getting log entries later Timestamp getTimeAsTimeStamp8 = new Timestamp(System.currentTimeMillis()); // Make the SOAP call to the operation cougarManager2.makeSoapCougarHTTPCalls(getNewHttpCallBean2); // Create the expected response object as an XML document (A message stating if the number of // items in the list was correct) XMLHelpers xMLHelpers4 = new XMLHelpers(); Document createAsDocument10 = xMLHelpers4.getXMLObjectFromString( "<response><message>There were 2 items specified in the list, 1 actually</message></response>"); // Convert the expected response to SOAP for comparison with actual response Map<String, Object> convertResponseToSOAP11 = cougarManager2.convertResponseToSOAP(createAsDocument10, getNewHttpCallBean2); // Check the response is as expected HttpResponseBean response5 = getNewHttpCallBean2.getResponseObjectsByEnum( com.betfair.testing.utils.cougar.enums.CougarMessageProtocolResponseTypeEnum.SOAP); AssertionUtils.multiAssertEquals( convertResponseToSOAP11.get("SOAP"), response5.getResponseObject()); // generalHelpers.pauseTest(500L); // Check the log entries are as expected cougarManager2.verifyRequestLogEntriesAfterDate( getTimeAsTimeStamp8, new RequestLogRequirement("2.8", "testLargePost")); }
@Test public void doTest() throws Exception { // Create a soap request structure as a Document object XMLHelpers xMLHelpers1 = new XMLHelpers(); Document requestDocument = xMLHelpers1.getXMLObjectFromString( "<I64SimpleTypeEchoRequest><msg>-9223372036854775809</msg></I64SimpleTypeEchoRequest>"); // Get an HTTPCallBean CougarManager cougarManager2 = CougarManager.getInstance(); HttpCallBean HTTPCallBean = cougarManager2.getNewHttpCallBean("87.248.113.14"); CougarManager CougarManager = cougarManager2; // Get LogManager JMX Attribute // Set Cougar Fault Controller attributes CougarManager.setCougarFaultControllerJMXMBeanAttrbiute("DetailedFaults", "false"); // Set service name to call HTTPCallBean.setServiceName("Baseline"); // Set service version to call HTTPCallBean.setVersion("v2"); // Set post object and request type HTTPCallBean.setPostObjectForRequestType(requestDocument, "SOAP"); // Get current time Timestamp timestamp = new Timestamp(System.currentTimeMillis()); // Make Cougar SOAP call CougarManager.makeSoapCougarHTTPCalls(HTTPCallBean); // Create a soap response structure as a Document object XMLHelpers xMLHelpers4 = new XMLHelpers(); Document responseDocument = xMLHelpers4.getXMLObjectFromString( "<soapenv:Fault><faultcode>soapenv:Client</faultcode><faultstring>DSC-0006</faultstring><detail/></soapenv:Fault>"); // Convert the Document to SOAP Map<String, Object> response5 = CougarManager.convertResponseToSOAP(responseDocument, HTTPCallBean); Object responseSoap = response5.get("SOAP"); // Get the actual SOAP response and compare it to the expected response HttpResponseBean response6 = HTTPCallBean.getResponseObjectsByEnum( com.betfair.testing.utils.cougar.enums.CougarMessageProtocolResponseTypeEnum.SOAP); AssertionUtils.multiAssertEquals(responseSoap, response6.getResponseObject()); // Pause test // generalHelpers.pauseTest(500L); // Get access log entries after the time recorded earlier in the test CougarManager.verifyAccessLogEntriesAfterDate( timestamp, new AccessLogRequirement("87.248.113.14", "/BaselineService/v2", "BadRequest")); }
@Test public void doTest() throws Exception { // Create the SOAP request as an XML Document (with a missing mandatory parameter) XMLHelpers xMLHelpers1 = new XMLHelpers(); Document createAsDocument1 = xMLHelpers1.getXMLObjectFromString( "<VoidResponseOperationRequest></VoidResponseOperationRequest>"); // Set up the Http Call Bean to make the request CougarManager cougarManager2 = CougarManager.getInstance(); HttpCallBean getNewHttpCallBean2 = cougarManager2.getNewHttpCallBean("87.248.113.14"); cougarManager2 = cougarManager2; cougarManager2.setCougarFaultControllerJMXMBeanAttrbiute("DetailedFaults", "false"); getNewHttpCallBean2.setServiceName("Baseline"); getNewHttpCallBean2.setVersion("v2"); // Set the created SOAP request as the PostObject getNewHttpCallBean2.setPostObjectForRequestType(createAsDocument1, "SOAP"); // Get current time for getting log entries later Timestamp getTimeAsTimeStamp8 = new Timestamp(System.currentTimeMillis()); // Make the SOAP call to the operation cougarManager2.makeSoapCougarHTTPCalls(getNewHttpCallBean2); // Create the expected response object as an XML document (fault) XMLHelpers xMLHelpers4 = new XMLHelpers(); Document createAsDocument10 = xMLHelpers4.getXMLObjectFromString( "<soapenv:Fault><faultcode>soapenv:Client</faultcode><faultstring>DSC-0018</faultstring><detail/></soapenv:Fault>"); // Convert the expected response to SOAP for comparison with actual response Map<String, Object> convertResponseToSOAP11 = cougarManager2.convertResponseToSOAP(createAsDocument10, getNewHttpCallBean2); // Check the responses are as expected (fault) HttpResponseBean response5 = getNewHttpCallBean2.getResponseObjectsByEnum( com.betfair.testing.utils.cougar.enums.CougarMessageProtocolResponseTypeEnum.SOAP); AssertionUtils.multiAssertEquals( convertResponseToSOAP11.get("SOAP"), response5.getResponseObject()); // Check the log entries are as expected CougarManager cougarManager7 = CougarManager.getInstance(); cougarManager7.verifyAccessLogEntriesAfterDate( getTimeAsTimeStamp8, new AccessLogRequirement("87.248.113.14", "/BaselineService/v2", "BadRequest")); }
@Test public void doTest() throws Exception { // Create the SOAP request as an XML Document (with byte parameters) XMLHelpers xMLHelpers1 = new XMLHelpers(); Document createAsDocument1 = xMLHelpers1.getXMLObjectFromString( "<ByteOperationRequest><headerParam>0</headerParam><queryParam>0</queryParam><message><bodyParameter>AAAA</bodyParameter></message></ByteOperationRequest>"); // Set up the Http Call Bean to make the request CougarManager cougarManager2 = CougarManager.getInstance(); HttpCallBean hbean = cougarManager2.getNewHttpCallBean("87.248.113.14"); CougarManager hinstance = cougarManager2; hbean.setServiceName("Baseline"); hbean.setVersion("v2"); // Set the created SOAP request as the PostObject hbean.setPostObjectForRequestType(createAsDocument1, "SOAP"); // Get current time for getting log entries later Timestamp getTimeAsTimeStamp7 = new Timestamp(System.currentTimeMillis()); // Make the SOAP call to the operation hinstance.makeSoapCougarHTTPCalls(hbean); // Create the expected response object as an XML document XMLHelpers xMLHelpers4 = new XMLHelpers(); Document createAsDocument9 = xMLHelpers4.getXMLObjectFromString( "<response><queryParameter>0</queryParameter><headerParameter>0</headerParameter><bodyParameter>AAAA</bodyParameter></response>"); // Convert the expected response to SOAP for comparison with actual response Map<String, Object> convertResponseToSOAP10 = hinstance.convertResponseToSOAP(createAsDocument9, hbean); // Check the response is as expected HttpResponseBean response5 = hbean.getResponseObjectsByEnum( com.betfair.testing.utils.cougar.enums.CougarMessageProtocolResponseTypeEnum.SOAP); AssertionUtils.multiAssertEquals( convertResponseToSOAP10.get("SOAP"), response5.getResponseObject()); // generalHelpers.pauseTest(500L); // Check the log entries are as expected hinstance.verifyRequestLogEntriesAfterDate( getTimeAsTimeStamp7, new RequestLogRequirement("2.8", "byteOperation")); }
@Test(dataProvider = "SchemaValidationEnabled") public void doTest(boolean schemaValidationEnabled) throws Exception { CougarHelpers helpers = new CougarHelpers(); try { CougarManager cougarManager = CougarManager.getInstance(); helpers.setJMXMBeanAttributeValue( "com.betfair.cougar.transport:type=soapCommandProcessor", "SchemaValidationEnabled", schemaValidationEnabled); // Create the HttpCallBean CougarManager cougarManager1 = CougarManager.getInstance(); HttpCallBean httpCallBeanBaseline = cougarManager1.getNewHttpCallBean(); CougarManager cougarManagerBaseline = cougarManager1; // Get the cougar logging attribute for getting log entries later // Point the created HttpCallBean at the correct service httpCallBeanBaseline.setServiceName("baseline", "cougarBaseline"); httpCallBeanBaseline.setVersion("v2"); // Create the SOAP request as an XML Document (with missing required query parameter) XMLHelpers xMLHelpers2 = new XMLHelpers(); Document createAsDocument2 = xMLHelpers2.getXMLObjectFromString( "<TestParameterStylesRequest><HeaderParam>Foo</HeaderParam></TestParameterStylesRequest>"); // Set up the Http Call Bean to make the request CougarManager cougarManager3 = CougarManager.getInstance(); HttpCallBean getNewHttpCallBean3 = cougarManager3.getNewHttpCallBean(); cougarManager3 = cougarManager3; cougarManager3.setCougarFaultControllerJMXMBeanAttrbiute("DetailedFaults", "false"); getNewHttpCallBean3.setServiceName("Baseline"); getNewHttpCallBean3.setVersion("v2"); // Set the created SOAP request as the PostObject getNewHttpCallBean3.setPostObjectForRequestType(createAsDocument2, "SOAP"); // Get current time for getting log entries later Timestamp getTimeAsTimeStamp9 = new Timestamp(System.currentTimeMillis()); // Make the SOAP call to the operation cougarManager3.makeSoapCougarHTTPCalls(getNewHttpCallBean3); // Create the expected response object as an XML document XMLHelpers xMLHelpers5 = new XMLHelpers(); Document createAsDocument11 = xMLHelpers5.getXMLObjectFromString( "<soapenv:Fault><faultcode>soapenv:Client</faultcode><faultstring>DSC-0018</faultstring><detail/></soapenv:Fault>"); // Convert the expected response to SOAP for comparison with the actual response Map<String, Object> convertResponseToSOAP12 = cougarManager3.convertResponseToSOAP(createAsDocument11, getNewHttpCallBean3); // Check the response is as expected HttpResponseBean response6 = getNewHttpCallBean3.getResponseObjectsByEnum( com.betfair.testing.utils.cougar.enums.CougarMessageProtocolResponseTypeEnum.SOAP); AssertionUtils.multiAssertEquals( convertResponseToSOAP12.get("SOAP"), response6.getResponseObject()); // Check the log entries are as expected CougarHelpers cougarHelpers8 = new CougarHelpers(); String JavaVersion = cougarHelpers8.getJavaVersion(); CougarManager cougarManager9 = CougarManager.getInstance(); cougarManager9.verifyAccessLogEntriesAfterDate( getTimeAsTimeStamp9, new AccessLogRequirement("87.248.113.14", "/BaselineService/v2", "BadRequest")); } finally { helpers.setJMXMBeanAttributeValue( "com.betfair.cougar.transport:type=soapCommandProcessor", "SchemaValidationEnabled", true); } }