You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by pe...@apache.org on 2005/03/21 15:52:35 UTC

cvs commit: ws-axis/c/tests/auto_build/testcases/tests NestedArrays.xml NestedComplex.xml PrimitiveAndArray.xml

perryan     2005/03/21 06:52:35

  Added:       c/tests/auto_build/testcases/client/cpp
                        NestedArraysClient.cpp NestedComplexClient.cpp
                        PrimitiveAndArrayClient.cpp
               c/tests/auto_build/testcases/output NestedArrays.expected
                        NestedComplex.expected PrimitiveAndArray.expected
               c/tests/auto_build/testcases/tests NestedArrays.xml
                        NestedComplex.xml PrimitiveAndArray.xml
  Log:
  Added 3 new tests to cover a mixture of complex types with arrays and sub-complex types, and mixing arrays with primitives.
  
  Revision  Changes    Path
  1.1                  ws-axis/c/tests/auto_build/testcases/client/cpp/NestedArraysClient.cpp
  
  Index: NestedArraysClient.cpp
  ===================================================================
  #include "NestedArrays.hpp"
  #include <axis/AxisException.hpp>
  #include <iostream>
  
  #define ARRAYSIZE 2
  
  int main(int argc, char* argv[])
  {
  	char endpoint[256];
  	const char* url="http://localhost:80/axis/NestedArrays";
  
  	if(argc>1)
  		url = argv[1];
  
  	try
  	{
  		sprintf(endpoint, "%s", url);
  		NestedArrays* ws = new NestedArrays(endpoint);
  
  		/* These contain xsd__int_Array */
  		ArrayOf_xsd_int baseArray1;
  		ArrayOf_xsd_int baseArray2;
  		ArrayOf_xsd_int baseArray3;
  		ArrayOf_xsd_int baseArray4;
  
  		/* These contain ArrayOf_xsd_int_Array */
  		ArrayOfArrayOf_xsd_int subArray1;
  		ArrayOfArrayOf_xsd_int subArray2;
  
  		/* This is an array of ArrayOfArrayOf_xsd_int */
  		ArrayOfArrayOf_xsd_int_Array parentArray;
  
  		/* Set xsd__int_Array into ArrayOf_xsd_int */
  		baseArray1.item.m_Array = new xsd__int[ARRAYSIZE];
  		baseArray1.item.m_Size = ARRAYSIZE;
  		baseArray1.item.m_Array[0] = 1;
  		baseArray1.item.m_Array[1] = 2;
  
  		baseArray2.item.m_Array = new xsd__int[ARRAYSIZE];
  		baseArray2.item.m_Size = ARRAYSIZE;
  		baseArray2.item.m_Array[0] = 3;
  		baseArray2.item.m_Array[1] = 4;
  
  		baseArray3.item.m_Array = new xsd__int[ARRAYSIZE];
  		baseArray3.item.m_Size = ARRAYSIZE;
  		baseArray3.item.m_Array[0] = 5;
  		baseArray3.item.m_Array[1] = 6;
  
  		baseArray4.item.m_Array = new xsd__int[ARRAYSIZE];
  		baseArray4.item.m_Size = ARRAYSIZE;
  		baseArray4.item.m_Array[0] = 7;
  		baseArray4.item.m_Array[1] = 8;
  
  		/* Set ArrayOf_xsd_int_Array into ArrayOfArrayOf_xsd_int */
  		subArray1.item.m_Array = new ArrayOf_xsd_int[ARRAYSIZE];
  		subArray1.item.m_Size = ARRAYSIZE;
  		subArray1.item.m_Array[0] = baseArray1;
  		subArray1.item.m_Array[1] = baseArray2;
  
  		subArray2.item.m_Array = new ArrayOf_xsd_int[ARRAYSIZE];
  		subArray2.item.m_Size = ARRAYSIZE;
  		subArray2.item.m_Array[0] = baseArray3;
  		subArray2.item.m_Array[1] = baseArray4;
  
  		/* Set ArrayOfArrayOf_xsd_int into an Array of them */
  		parentArray.m_Array = new ArrayOfArrayOf_xsd_int[ARRAYSIZE];
  		parentArray.m_Size = ARRAYSIZE;
  		parentArray.m_Array[0] = subArray1;
  		parentArray.m_Array[1] = subArray2;
  
  		xsd__int_Array response = ws->sendNestedArrays(parentArray);
  
  		cout << response.m_Array[0] << " " << response.m_Array[1] << endl;
  
  		delete ws;
  	}
  	catch(AxisException& e)
  	{
  	    cout << "Exception : " << e.what() << endl;
  	}
  	catch(exception& e)
  	{
  	    cout << "Unknown exception has occured" << endl;
  	}
  	catch(...)
  	{
  	    cout << "Unknown exception has occured" << endl;
  	}
  	cout<< "---------------------- TEST COMPLETE -----------------------------"<< endl;
  	
  	return 0;
  }
  
  
  
  
  1.1                  ws-axis/c/tests/auto_build/testcases/client/cpp/NestedComplexClient.cpp
  
  Index: NestedComplexClient.cpp
  ===================================================================
  
  /*
   * NestedComplex
   * 
   * Send a complex data type, ComplexType2, which has a data element of an
   * array of a complex data type, ComplexType1. The ComplexType1 data type
   * has a xsd:string element, a xsd:int element and a complex data type element
   * SimpleArrays. The SimpleArrays complex data type has a xsd:string array and
   * a xsd_int array.
   *
   * ComplexType2
   *   + ComplexType1[]
   *       + string
   *       + int
   *       + SimpleArrays
   *           + string[]
   *           + int[]
   *
   * This is an echo type service so the response should be the same as the request.
   *
   * Author: Andrew Perry
   *
   */
  
  #include "NestedComplex.hpp"
  #include <axis/AxisException.hpp>
  #include <iostream>
  
  #define ARRAYSIZE 2
  
  int main(int argc, char* argv[])
  {
  	char endpoint[256];
  	const char* url="http://localhost:80/axis/NestedComplex";
  
  	if(argc>1)
  		url = argv[1];
  
  	try
  	{
  		sprintf(endpoint, "%s", url);
  		NestedComplex ws(endpoint);
  
  		ComplexType2 complexType2;
  		ComplexType2* response;
  		xsd__string_Array strArray;
  		xsd__int_Array intArray;
  		SimpleArrays simpleArrays;
  		ComplexType1 complexType1_1;
  		ComplexType1 complexType1_2;
  		ComplexType1_Array complexType1Array;
  
  		strArray.m_Size = ARRAYSIZE;
  		strArray.m_Array = new xsd__string[ARRAYSIZE];
  		strArray.m_Array[0] = "Apache";
  		strArray.m_Array[1] = "Axis C++";
  
  		intArray.m_Size = ARRAYSIZE;
  		intArray.m_Array = new xsd__int[ARRAYSIZE];
  		intArray.m_Array[0] = 6;
  		intArray.m_Array[1] = 7;
  
  		simpleArrays.stringArray = strArray;
  		simpleArrays.intArray = intArray;
  
  		complexType1_1.simpleArrays = &simpleArrays;
  		complexType1_1.ct1_string = "Hello";
  		complexType1_1.ct1_int = 13;
  		complexType1_2.simpleArrays = &simpleArrays;
  		complexType1_2.ct1_string = "World";
  		complexType1_2.ct1_int = 27;
  
  		complexType1Array.m_Size = ARRAYSIZE;
  		complexType1Array.m_Array = new ComplexType1*[ARRAYSIZE];
  		complexType1Array.m_Array[0] = &complexType1_1;
  		complexType1Array.m_Array[1] = &complexType1_2;
  
  		complexType2.complexType1Array = complexType1Array;
  
  		response = ws.echoNestedComplex(&complexType2);
  		cout << response->complexType1Array.m_Array[0]->ct1_string << endl;
  		cout << response->complexType1Array.m_Array[0]->ct1_int << endl;
  		cout << response->complexType1Array.m_Array[0]->simpleArrays->stringArray.m_Array[0] << " ";
  		cout << response->complexType1Array.m_Array[0]->simpleArrays->stringArray.m_Array[1] << endl;
  		cout << response->complexType1Array.m_Array[0]->simpleArrays->intArray.m_Array[0] << " ";
  		cout << response->complexType1Array.m_Array[0]->simpleArrays->intArray.m_Array[1] << endl;
  		cout << response->complexType1Array.m_Array[1]->ct1_string << endl;
  		cout << response->complexType1Array.m_Array[1]->ct1_int << endl;
  		cout << response->complexType1Array.m_Array[1]->simpleArrays->stringArray.m_Array[0] << " ";
  		cout << response->complexType1Array.m_Array[1]->simpleArrays->stringArray.m_Array[1] << endl;
  		cout << response->complexType1Array.m_Array[1]->simpleArrays->intArray.m_Array[0] << " ";
  		cout << response->complexType1Array.m_Array[1]->simpleArrays->intArray.m_Array[1] << endl;
  
  	}
  	catch(AxisException& e)
  	{
  	    cout << "Exception : " << e.what() << endl;
  	}
  	catch(exception& e)
  	{
  	    cout << "Unknown exception has occured" << endl;
  	}
  	catch(...)
  	{
  	    cout << "Unknown exception has occured" << endl;
  	}
  	cout<< "---------------------- TEST COMPLETE -----------------------------"<< endl;
  
  	return 0;
  }
  
  
  
  
  1.1                  ws-axis/c/tests/auto_build/testcases/client/cpp/PrimitiveAndArrayClient.cpp
  
  Index: PrimitiveAndArrayClient.cpp
  ===================================================================
  #include "PrimitiveAndArray.hpp"
  #include <axis/AxisException.hpp>
  #include <iostream>
  
  #define ARRAYSIZE 2
  
  int main(int argc, char* argv[])
  {
  	char endpoint[256];
  	const char* url="http://localhost:80/axis/Calculator";
  
  	if(argc>1)
  		url = argv[1];
  
  	try
  	{
  		sprintf(endpoint, "%s", url);
  		PrimitiveAndArray* ws = new PrimitiveAndArray(endpoint);
  
  		xsd__int single;
  		xsd__int_Array intArray;
  		ComplexReturn* response;
  
  		single=37;
  
  		intArray.m_Size = ARRAYSIZE;
  		intArray.m_Array = new xsd__int[ARRAYSIZE];
  		intArray.m_Array[0] = 6;
  		intArray.m_Array[1] = 7;
  
  		response = ws->sendPrimitiveAndArray(single, intArray);
  		cout << response->returnInt << " " << response->returnArray.m_Array[0] << " " << response->returnArray.m_Array[1] << endl;
  
  		single=43;
  		intArray.m_Array[0] = 13;
  		intArray.m_Array[1] = 17;
  		response = ws->sendArrayAndPrimitive(intArray, single);
  		cout << response->returnInt << " " << response->returnArray.m_Array[0] << " " << response->returnArray.m_Array[1] << endl;
  
  		delete ws;
  	}
  	catch(AxisException& e)
  	{
  	    cout << "Exception : " << e.what() << endl;
  	}
  	catch(exception& e)
  	{
  	    cout << "Unknown exception has occured" << endl;
  	}
  	catch(...)
  	{
  	    cout << "Unknown exception has occured" << endl;
  	}
  	cout<< "---------------------- TEST COMPLETE -----------------------------"<< endl;
  	
  	return 0;
  }
  
  
  
  
  1.1                  ws-axis/c/tests/auto_build/testcases/output/NestedArrays.expected
  
  Index: NestedArrays.expected
  ===================================================================
  8 0
  ---------------------- TEST COMPLETE -----------------------------
  
  
  
  1.1                  ws-axis/c/tests/auto_build/testcases/output/NestedComplex.expected
  
  Index: NestedComplex.expected
  ===================================================================
  Hello
  13
  Apache Axis C++
  6 7
  World
  27
  Apache Axis C++
  6 7
  ---------------------- TEST COMPLETE -----------------------------
  
  
  
  1.1                  ws-axis/c/tests/auto_build/testcases/output/PrimitiveAndArray.expected
  
  Index: PrimitiveAndArray.expected
  ===================================================================
  37 6 7
  43 13 17
  ---------------------- TEST COMPLETE -----------------------------
  
  
  
  1.1                  ws-axis/c/tests/auto_build/testcases/tests/NestedArrays.xml
  
  Index: NestedArrays.xml
  ===================================================================
  <test>
      <name>NestedArrays</name>
      <description>NestedArrays</description>
      <clientLang>cpp</clientLang>
      <clientCode>NestedArraysClient.cpp</clientCode>
      <wsdl>NestedArrays.wsdl</wsdl>
      <expected>
          <output>
              NestedArrays.expected
          </output>
      </expected>
  	<endpoint>http://localhost:80/NestedArrays/services/NestedArrays</endpoint>
  </test>
  
  
  
  1.1                  ws-axis/c/tests/auto_build/testcases/tests/NestedComplex.xml
  
  Index: NestedComplex.xml
  ===================================================================
  <test>
      <name>NestedComplex</name>
      <description>NestedComplex</description>
      <clientLang>cpp</clientLang>
      <clientCode>NestedComplexClient.cpp</clientCode>
      <wsdl>NestedComplex.wsdl</wsdl>
      <expected>
          <output>
              NestedComplex.expected
          </output>
      </expected>
  	<endpoint>http://localhost:80/NestedComplex/services/NestedComplex</endpoint>
  </test>
  
  
  
  1.1                  ws-axis/c/tests/auto_build/testcases/tests/PrimitiveAndArray.xml
  
  Index: PrimitiveAndArray.xml
  ===================================================================
  <test>
      <name>PrimitiveAndArray</name>
      <description>PrimitiveAndArray</description>
      <clientLang>cpp</clientLang>
      <clientCode>PrimitiveAndArrayClient.cpp</clientCode>
      <wsdl>PrimitiveAndArray.wsdl</wsdl>
      <expected>
          <output>
              PrimitiveAndArray.expected
          </output>
      </expected>
  	<endpoint>http://localhost:80/PrimitiveAndArray/services/PrimitiveAndArray</endpoint>
  </test>