2000-01-15 02:00:06 +00:00
|
|
|
/********************************************************************
|
|
|
|
* COPYRIGHT:
|
|
|
|
* Copyright (c) 1997-1999, International Business Machines Corporation and
|
|
|
|
* others. All Rights Reserved.
|
|
|
|
********************************************************************/
|
|
|
|
/********************************************************************************
|
1999-08-16 21:50:52 +00:00
|
|
|
*
|
|
|
|
* 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 "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;
|
|
|
|
int32_t resultlength, resultlengthneeded;
|
|
|
|
UFieldPosition pos;
|
1999-10-07 00:07:53 +00:00
|
|
|
UErrorCode status = U_ZERO_ERROR;
|
1999-08-16 21:50:52 +00:00
|
|
|
|
|
|
|
|
|
|
|
resultlength=0;
|
|
|
|
resultlengthneeded=udat_format(dat, d1, NULL, resultlength, &pos, &status);
|
1999-10-07 00:07:53 +00:00
|
|
|
if(status==U_BUFFER_OVERFLOW_ERROR)
|
1999-08-16 21:50:52 +00:00
|
|
|
{
|
1999-10-07 00:07:53 +00:00
|
|
|
status=U_ZERO_ERROR;
|
1999-08-16 21:50:52 +00:00
|
|
|
resultlength=resultlengthneeded+1;
|
|
|
|
result1=(UChar*)malloc(sizeof(UChar) * resultlength);
|
|
|
|
udat_format(dat, d1, result1, resultlength, &pos, &status);
|
|
|
|
}
|
1999-10-18 22:48:32 +00:00
|
|
|
if(U_FAILURE(status))
|
1999-08-16 21:50:52 +00:00
|
|
|
{
|
|
|
|
log_err("Error in formatting using udat_format(.....): %s\n", myErrorName(status));
|
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
return result1;
|
|
|
|
|
|
|
|
}
|