/********************************************************************
 * COPYRIGHT: 
 * Copyright (c) 1996-2001, International Business Machines Corporation and
 * others. All Rights Reserved.
 ********************************************************************/
/********************************************************************************
*
* File CALLTEST.C
*
* Modification History:
*   Creation:   Madhu Katragadda 
*********************************************************************************
*/
/* THE FILE WHERE ALL C API TESTS ARE ADDED TO THE ROOT */


#include "cintltst.h"

void addUtility(TestNode** root);
void addBreakIter(TestNode** root);
void addStandardNamesTest(TestNode **root);
void addFormatTest(TestNode** root);
void addConvert(TestNode** root);
void addCollTest(TestNode** root);
void addComplexTest(TestNode** root);
void addUDataTest(TestNode** root);
void addUTF16Test(TestNode** root);
void addUTF8Test(TestNode** root);
void addUTransTest(TestNode** root);
void addPUtilTest(TestNode** root);
void addCompactArrayTest(TestNode** root);

void addAllTests(TestNode** root)
{
    addStandardNamesTest(root);
    addUTF16Test(root);
    addUTF8Test(root);
    addUtility(root);
    addBreakIter(root);
    addFormatTest(root);
    addConvert(root);
    addCollTest(root);
    addComplexTest(root);
    addUDataTest(root);
    addUTransTest(root);
    addPUtilTest(root);
    addCompactArrayTest(root);
}

