1/* 2********************************************************************** 3* Copyright (C) 2011-2013, International Business Machines Corporation 4* and others. All Rights Reserved. 5********************************************************************** 6*/ 7 8/** 9 * IntlTestSpoof is the top level test class for the Unicode Spoof detection tests 10 */ 11 12#ifndef INTLTESTSPOOF_H 13#define INTLTESTSPOOF_H 14 15#include "unicode/utypes.h" 16#if !UCONFIG_NO_REGULAR_EXPRESSIONS && !UCONFIG_NO_NORMALIZATION && !UCONFIG_NO_FILE_IO 17#include "unicode/uspoof.h" 18#include "intltest.h" 19 20 21class IntlTestSpoof: public IntlTest { 22public: 23 void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par = NULL ); 24 25 // Test the USpoofDetector API functions that require C++ 26 // The pure C part of the API, which is most of it, is tested in cintltst 27 void testSpoofAPI(); 28 29 void testSkeleton(); 30 31 void testAreConfusable(); 32 33 void testInvisible(); 34 35 void testConfData(); 36 37 void testBug8654(); 38 39 void testIdentifierInfo(); 40 41 void testScriptSet(); 42 43 void testRestrictionLevel(); 44 45 void testMixedNumbers(); 46 47 // Internal function to run a single skeleton test case. 48 void checkSkeleton(const USpoofChecker *sc, uint32_t flags, 49 const char *input, const char *expected, int32_t lineNum); 50}; 51 52#endif // !UCONFIG_NO_REGULAR_EXPRESSIONS && !UCONFIG_NO_NORMALIZATION && !UCONFIG_NO_FILE_IO 53#endif 54