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 na...@apache.org on 2006/04/25 01:52:18 UTC

svn commit: r396734 - /webservices/axis/trunk/c/tests/auto_build/testcases/client/c/RecurseTypesClient.c

Author: nadiramra
Date: Mon Apr 24 16:52:17 2006
New Revision: 396734

URL: http://svn.apache.org/viewcvs?rev=396734&view=rev
Log:
C support fixes/enhancements.

Modified:
    webservices/axis/trunk/c/tests/auto_build/testcases/client/c/RecurseTypesClient.c

Modified: webservices/axis/trunk/c/tests/auto_build/testcases/client/c/RecurseTypesClient.c
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/c/tests/auto_build/testcases/client/c/RecurseTypesClient.c?rev=396734&r1=396733&r2=396734&view=diff
==============================================================================
--- webservices/axis/trunk/c/tests/auto_build/testcases/client/c/RecurseTypesClient.c (original)
+++ webservices/axis/trunk/c/tests/auto_build/testcases/client/c/RecurseTypesClient.c Mon Apr 24 16:52:17 2006
@@ -13,51 +13,78 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
+#include <stdlib.h>
+#include <stdio.h>
+#include <time.h>
+
+#include "CommonClientTestCode.h"
 #include "RecurseTypesWS.h" 
 
+#define WSDL_DEFAULT_ENDPOINT "http://localhost:9080/RecurseTypes/services/sampleWS"
+
 int main(int argc, char* argv[])
 { 
+    AXISCHANDLE ws;
 
-  Kind inputAtt,*outputAtt;
-  Type1 *input,*output,*pTemp;
-  void * pStub;
-  int i;
+    char *endpoint = WSDL_DEFAULT_ENDPOINT;
+    int returnValue = 1; // Assume Failure
 
-  pStub = get_RecurseTypesWS_stub();
+    Type1 *input,*output;
+    int i;
+ 
+    axiscAxisRegisterExceptionHandler(exceptionHandler);
+
+    if (argc>2 && strcmp(argv[1], "-e") == 0) 
+        endpoint = argv[2];       
+       
+    ws = get_RecurseTypesWS_stub();
+               
+    input = (Type1 *)Axis_Create_Type1();
+    input->att_kind = axiscAxisNew(XSDC_STRING,strlen(Kind_CHEQUE) + 1);
+    strcpy(input->att_kind, Kind_CHEQUE);
+    input->kind = axiscAxisNew(XSDC_STRING,strlen("Check In") + 1);
+    strcpy(input->kind, "Check In");
+
+    Type1_Array arrayIn;
+    Type1 ** array = (Type1 **)malloc(sizeof(Type1 *) * 10);
+
+    for ( i = 0; i < 10; i++ )
+    {
+        array[i]=Axis_Create_Type1();
+        array[i]->kind = axiscAxisNew(XSDC_STRING,strlen("Sample") + 1);
+        strcpy(array[i]->kind, "Sample");
+        array[i]->index = 0;
+    }
+    arrayIn.followings->m_Array = array;
+    arrayIn.followings->m_Size = 10;
+    arrayIn.followings->m_Type = C_USER_TYPE;
+    
+    output = getInput(ws, input);
+
+    printf("Result\n");
+    if (exceptionOccurred == C_TRUE ||
+        get_RecurseTypesWS_Status(ws) == AXISC_FAIL ||
+        output == NULL)
+       printf("FAILED\n");    
+    else 
+    {
+      int outputSize = output->followings->m_Size;
+      Type1 ** outArray = output->followings->m_Array;
+      
+      printf("\tAtt_kind = %s\n", output->att_kind);
+      printf("\tKind = %s\n", output->kind);
+
+      for ( i = 0; i < outputSize; i++ )
+        printf("\tKind [%d] = %s\n", i, outArray[i]->kind);
+        
+      Axis_Delete_Type1(array, 1, 10);
 
-  input = Axis_Create_Type1 (0,0,0);
+      /* TODO need to free resources */
 
-  input->att_kind = Kind_CHEQUE;
-  input->kind = strdup("Check In");
-  
-  input->followings.m_Array = Axis_Create_Type1 (0,1,10);
-  input->followings.m_Size = 10;
+      returnValue = 0; // Success
+    }
 
-  pTemp = input->followings.m_Array;
-  for ( i = 0; i < 10; i++ ) {
-    pTemp->kind = strdup("Sample");
-    pTemp++;
-  }
-
-  output = getInput(pStub,input);
-
-  printf ("Result\n");
-  if ( output == NULL )
-   printf ("Invoke failed\n");
-  else {
-   printf ("\tAtt_kind = %s\n", output->att_kind);
-   printf ("\tKind = %s\n", output->kind);
-   pTemp = output->followings.m_Array;
-   for ( i = 0; i < output->followings.m_Size; i++ ) {
-     printf ("\tKind [%d] = %s\n",i, pTemp->kind);
-     pTemp++;
-   }
-  }
-
-  /*
-  Axis_Delete_Type1 (input,0,0);
-  Axis_Delete_Type1 (output,0,0);
-  */
-  destroy_RecurseTypesWS_stub(pStub);
-  return 0;
+  printf("---------------------- TEST COMPLETE -----------------------------"<< endl;
+  
+  return returnValue;
 }