/******************************************************************** * COPYRIGHT: * Copyright (c) 1997-1999, International Business Machines Corporation and * others. All Rights Reserved. ********************************************************************/ /******************************************************************************** * * File CFORMTST.C * * Modification History: * Name Description * Madhu Katragadda Creation ********************************************************************************* */ /* FormatTest is a medium top level test for everything in the C FORMAT API */ #include #include "cintltst.h" #include "cformtst.h" void addCalTest(TestNode**); void addDateForTest(TestNode**); void addNumForTest(TestNode**); void addMsgForTest(TestNode**); void addDateForRgrTest(TestNode**); void addNumFrDepTest(TestNode**); void addDtFrDepTest(TestNode**); void checkHeap() { int i; void *n[2048]; log_info("checkHeap..."); for(i=0;i<1;i++) { n[i]= malloc(i+15); } /* for(i=0;i<2048;i++) { free(n[i]); }*/ } void addFormatTest(TestNode** root) { addCalTest(root); /* addTest(root, &checkHeap, "/tsformat/mallocTest2" ); */ addDateForTest(root); /* addTest(root, &checkHeap, "/tsformat/mallocTest3" ); */ addNumForTest(root); /* addTest(root, &checkHeap, "/tsformat/mallocTest4" ); */ addNumFrDepTest(root); /* addTest(root, &checkHeap, "/tsformat/mallocTest5" ); */ addMsgForTest(root); addDateForRgrTest(root); addDtFrDepTest(root); } /*INternal functions used*/ UChar* myDateFormat(UDateFormat* dat, UDate d1) { UChar *result1=NULL; int32_t resultlength, resultlengthneeded; UFieldPosition pos; UErrorCode status = U_ZERO_ERROR; resultlength=0; resultlengthneeded=udat_format(dat, d1, NULL, resultlength, &pos, &status); if(status==U_BUFFER_OVERFLOW_ERROR) { status=U_ZERO_ERROR; resultlength=resultlengthneeded+1; /*result1=(UChar*)malloc(sizeof(UChar) * resultlength); *//* this leaks for now */ result1=(UChar*)ctst_malloc(sizeof(UChar) * resultlength); udat_format(dat, d1, result1, resultlength, &pos, &status); } if(U_FAILURE(status)) { log_err("Error in formatting using udat_format(.....): %s\n", myErrorName(status)); return 0; } return result1; }