diff --git a/test/auto/request/tst_soaptest.cpp b/test/auto/request/tst_soaptest.cpp
index c2d94a7..345eb5f 100644
--- a/test/auto/request/tst_soaptest.cpp
+++ b/test/auto/request/tst_soaptest.cpp
@@ -18,9 +18,11 @@ public:
private:
Q_SLOT void construct();
- Q_SLOT void public_soap_xml();
+ /*Q_SLOT*/ void geocode_soap();
- Q_SLOT void public_soap_test();
+ /*Q_SLOT*/ void public_soap_xml();
+
+ /*Q_SLOT*/ void public_soap_test();
Q_SLOT void public_soap_test_data();
};
@@ -42,10 +44,58 @@ void SoapTest::construct()
//QCOMPARE(Utils::sourceData("test/cmd/LatLonListSubgrid-response.xml").count(), 1298);
}
+void SoapTest::geocode_soap()
+{
+ const QString soapAction = "https://geoservices.tamu.edu/GeocodeAddressNonParsed";
+ const QString host = "https://geoservices.tamu.edu";
+ const QString endpoint = "/Services/Geocode/WebService/GeocoderService_V04_01.asmx";
+ const QString url = host + endpoint;
+
+ QString xml = QString(R"(
+
+
+
+ string
+ string
+ string
+ string
+ string
+ double
+ boolean
+ Unknown or NineteenNinety or TwoThousand or TwoThousandTen or AllAvailable
+ boolean
+ boolean
+
+
+ )");
+
+ QByteArray xmlRequest = xml.toUtf8();
+
+ // SOAP download
+ RequestManager soap;
+ auto response = std::make_shared(soapAction, url, xmlRequest);
+ QCOMPARE(response.use_count(), 1L );
+ soap.processRequest(response);
+ QVERIFY(soap.mRequestMap.count() == 1);
+ QSignalSpy spyFinished(&soap, &RequestManager::downloadFinished);
+
+ QVERIFY(spyFinished.wait());
+ //QCOMPARE(response.use_count(), 2L ); // this context + Soap
+ spyFinished.clear();
+ QCOMPARE(response.use_count(), 1L ); // this context + Soap
+
+ // Response
+ QByteArray xmlResponse = Test::sourceData("soap/bankapi-response.xml");
+ QVERIFY( ! xmlResponse.isEmpty());
+
+ QCOMPARE(response.use_count(), 1L ); // this context + Soap
+ QCOMPARE(response->responseData(), xmlResponse);
+}
+
void SoapTest::public_soap_xml()
{
QString soapAction = "blz:getBank";
- QString endpoint = "http://www.thomas-bayer.com/axis2/services/BLZService";
+ QString url = "http://www.thomas-bayer.com/axis2/services/BLZService";
QString xml = QString(""
@@ -61,7 +111,7 @@ void SoapTest::public_soap_xml()
// SOAP download
RequestManager soap;
- auto response = std::make_shared(soapAction, endpoint, xmlRequest);
+ auto response = std::make_shared(soapAction, url, xmlRequest);
QCOMPARE(response.use_count(), 1L );
soap.processRequest(response);
QVERIFY(soap.mRequestMap.count() == 1);
diff --git a/test/data/soap/bankapi-1.2-response.xml b/test/data/soap/bankapi-1.2-response.xml
index 27ed395..e69de29 100644
--- a/test/data/soap/bankapi-1.2-response.xml
+++ b/test/data/soap/bankapi-1.2-response.xml
@@ -1 +0,0 @@
-BHF-BANKBHFBDEFF100Berlin10117
\ No newline at end of file
diff --git a/test/data/soap/bankapi-1.2.sh b/test/data/soap/bankapi-1.2.sh
index b50801d..ecec82c 100755
--- a/test/data/soap/bankapi-1.2.sh
+++ b/test/data/soap/bankapi-1.2.sh
@@ -4,11 +4,11 @@
ACTION_YOU_WANT_TO_CALL="blz:getBank"
-XMLFILENAME=test03-1.2.xml
+XMLFILENAME=bankapi-1.2.xml
URL_OF_THE_SOAP_WEB_SERVICE_ENDPOINT="http://www.thomas-bayer.com/axis2/services/BLZService"
curl -X POST $URL_OF_THE_SOAP_WEB_SERVICE_ENDPOINT \
-H 'Content-Type: application/soap+xml;action=$ACTION_YOU_WANT_TO_CALL' \
-H 'SOAPAction: $ACTION_YOU_WANT_TO_CALL' \
- --data @$XMLFILENAME > test03-1.2-response.xml
+ --data @$XMLFILENAME > bankapi-1.2-response.xml
diff --git a/test/data/soap/bankapi.sh b/test/data/soap/bankapi.sh
index 2ef4bb5..3c6f56d 100755
--- a/test/data/soap/bankapi.sh
+++ b/test/data/soap/bankapi.sh
@@ -4,11 +4,11 @@
ACTION_YOU_WANT_TO_CALL="blz:getBank"
-XMLFILENAME=test03.xml
+XMLFILENAME=bankapi.xml
URL_OF_THE_SOAP_WEB_SERVICE_ENDPOINT="http://www.thomas-bayer.com/axis2/services/BLZService"
curl -X POST $URL_OF_THE_SOAP_WEB_SERVICE_ENDPOINT \
-H 'Content-Type: text/xml' \
-H 'SOAPAction: $ACTION_YOU_WANT_TO_CALL' \
- --data @$XMLFILENAME > test03-response.xml
+ --data @$XMLFILENAME > bankapi-response.xml