OLD | NEW |
(Empty) | |
| 1 /* |
| 2 ********************************************************************** |
| 3 * Copyright (c) 2002-2005, International Business Machines |
| 4 * Corporation and others. All Rights Reserved. |
| 5 ********************************************************************** |
| 6 ********************************************************************** |
| 7 */ |
| 8 /** |
| 9 * This Program tests the performance of ICU's Normalization engine against Wind
ows |
| 10 * to run it use the command like |
| 11 * |
| 12 * c:\normperf.exe -s C:\work\ICUCupertinoRep\icu4c\collation-perf-data -i 10 -
p 15 -f TestNames_Asian.txt -u -e UTF-8 -l |
| 13 */ |
| 14 #include "convperf.h" |
| 15 #include "data.h" |
| 16 #include <stdio.h> |
| 17 |
| 18 int main(int argc, const char* argv[]){ |
| 19 UErrorCode status = U_ZERO_ERROR; |
| 20 ConverterPerformanceTest test(argc, argv, status); |
| 21 if(U_FAILURE(status)){ |
| 22 return status; |
| 23 } |
| 24 if(test.run()==FALSE){ |
| 25 fprintf(stderr,"FAILED: Tests could not be run please check the argument
s.\n"); |
| 26 return -1; |
| 27 } |
| 28 return 0; |
| 29 } |
| 30 |
| 31 |
| 32 ConverterPerformanceTest::ConverterPerformanceTest(int32_t argc, const char* arg
v[], UErrorCode& status) |
| 33 : UPerfTest(argc,argv,status){ |
| 34 |
| 35 } |
| 36 |
| 37 ConverterPerformanceTest::~ConverterPerformanceTest(){ |
| 38 |
| 39 } |
| 40 |
| 41 UPerfFunction* ConverterPerformanceTest::runIndexedTest(int32_t index, UBool exe
c,const char* &name, char* par) { |
| 42 switch (index) { |
| 43 TESTCASE(0,TestICU_CleanOpenAllConverters);// This calls u_cleanup() |
| 44 TESTCASE(1,TestICU_OpenAllConverters);// This doesn't call u_cleanup() |
| 45 |
| 46 TESTCASE(2,TestICU_UTF8_ToUnicode); |
| 47 TESTCASE(3,TestICU_UTF8_FromUnicode); |
| 48 TESTCASE(4,TestWinANSI_UTF8_ToUnicode); |
| 49 TESTCASE(5,TestWinANSI_UTF8_FromUnicode); |
| 50 TESTCASE(6,TestWinIML2_UTF8_ToUnicode); |
| 51 TESTCASE(7,TestWinIML2_UTF8_FromUnicode); |
| 52 |
| 53 TESTCASE(8,TestICU_Latin1_ToUnicode); |
| 54 TESTCASE(9,TestICU_Latin1_FromUnicode); |
| 55 TESTCASE(10,TestWinIML2_Latin1_ToUnicode); |
| 56 TESTCASE(11,TestWinIML2_Latin1_FromUnicode); |
| 57 |
| 58 TESTCASE(12,TestICU_Latin8_ToUnicode); |
| 59 TESTCASE(13,TestICU_Latin8_FromUnicode); |
| 60 TESTCASE(14,TestWinIML2_Latin8_ToUnicode); |
| 61 TESTCASE(15,TestWinIML2_Latin8_FromUnicode); |
| 62 |
| 63 TESTCASE(16,TestICU_EBCDIC_Arabic_ToUnicode); |
| 64 TESTCASE(17,TestICU_EBCDIC_Arabic_FromUnicode); |
| 65 TESTCASE(18,TestWinIML2_EBCDIC_Arabic_ToUnicode); |
| 66 TESTCASE(19,TestWinIML2_EBCDIC_Arabic_FromUnicode); |
| 67 |
| 68 TESTCASE(20,TestICU_SJIS_ToUnicode); |
| 69 TESTCASE(21,TestICU_SJIS_FromUnicode); |
| 70 TESTCASE(22,TestWinIML2_SJIS_ToUnicode); |
| 71 TESTCASE(23,TestWinIML2_SJIS_FromUnicode); |
| 72 |
| 73 TESTCASE(24,TestICU_EUCJP_ToUnicode); |
| 74 TESTCASE(25,TestICU_EUCJP_FromUnicode); |
| 75 TESTCASE(26,TestWinIML2_EUCJP_ToUnicode); |
| 76 TESTCASE(27,TestWinIML2_EUCJP_FromUnicode); |
| 77 |
| 78 TESTCASE(28,TestICU_GB2312_FromUnicode); |
| 79 TESTCASE(29,TestICU_GB2312_ToUnicode); |
| 80 TESTCASE(30,TestWinIML2_GB2312_ToUnicode); |
| 81 TESTCASE(31,TestWinIML2_GB2312_FromUnicode); |
| 82 |
| 83 TESTCASE(32,TestICU_ISO2022KR_ToUnicode); |
| 84 TESTCASE(33,TestICU_ISO2022KR_FromUnicode); |
| 85 TESTCASE(34,TestWinIML2_ISO2022KR_ToUnicode); |
| 86 TESTCASE(35,TestWinIML2_ISO2022KR_FromUnicode); |
| 87 |
| 88 TESTCASE(36,TestICU_ISO2022JP_ToUnicode); |
| 89 TESTCASE(37,TestICU_ISO2022JP_FromUnicode); |
| 90 TESTCASE(38,TestWinIML2_ISO2022JP_ToUnicode); |
| 91 TESTCASE(39,TestWinIML2_ISO2022JP_FromUnicode); |
| 92 |
| 93 TESTCASE(40,TestWinANSI_Latin1_ToUnicode); |
| 94 TESTCASE(41,TestWinANSI_Latin1_FromUnicode); |
| 95 |
| 96 TESTCASE(42,TestWinANSI_Latin8_ToUnicode); |
| 97 TESTCASE(43,TestWinANSI_Latin8_FromUnicode); |
| 98 |
| 99 TESTCASE(44,TestWinANSI_SJIS_ToUnicode); |
| 100 TESTCASE(45,TestWinANSI_SJIS_FromUnicode); |
| 101 |
| 102 TESTCASE(46,TestWinANSI_EUCJP_ToUnicode); |
| 103 TESTCASE(47,TestWinANSI_EUCJP_FromUnicode); |
| 104 |
| 105 TESTCASE(48,TestWinANSI_GB2312_ToUnicode); |
| 106 TESTCASE(49,TestWinANSI_GB2312_FromUnicode); |
| 107 |
| 108 TESTCASE(50,TestWinANSI_ISO2022KR_ToUnicode); |
| 109 TESTCASE(51,TestWinANSI_ISO2022KR_FromUnicode); |
| 110 |
| 111 TESTCASE(52,TestWinANSI_ISO2022JP_ToUnicode); |
| 112 TESTCASE(53,TestWinANSI_ISO2022JP_FromUnicode); |
| 113 |
| 114 default: |
| 115 name = ""; |
| 116 return NULL; |
| 117 } |
| 118 return NULL; |
| 119 |
| 120 } |
| 121 |
| 122 UPerfFunction* ConverterPerformanceTest::TestICU_CleanOpenAllConverters() { |
| 123 UErrorCode status = U_ZERO_ERROR; |
| 124 UPerfFunction* pf = new ICUOpenAllConvertersFunction(TRUE, status); |
| 125 if(U_FAILURE(status)){ |
| 126 return NULL; |
| 127 } |
| 128 return pf; |
| 129 } |
| 130 |
| 131 UPerfFunction* ConverterPerformanceTest::TestICU_OpenAllConverters() { |
| 132 UErrorCode status = U_ZERO_ERROR; |
| 133 UPerfFunction* pf = new ICUOpenAllConvertersFunction(FALSE, status); |
| 134 if(U_FAILURE(status)){ |
| 135 return NULL; |
| 136 } |
| 137 return pf; |
| 138 } |
| 139 |
| 140 UPerfFunction* ConverterPerformanceTest::TestICU_UTF8_FromUnicode(){ |
| 141 UErrorCode status = U_ZERO_ERROR; |
| 142 ICUFromUnicodePerfFunction* pf = new ICUFromUnicodePerfFunction("utf-8",utf8
_uniSource, LENGTHOF(utf8_uniSource), status); |
| 143 if(U_FAILURE(status)){ |
| 144 return NULL; |
| 145 } |
| 146 return pf; |
| 147 } |
| 148 |
| 149 UPerfFunction* ConverterPerformanceTest::TestICU_UTF8_ToUnicode(){ |
| 150 UErrorCode status = U_ZERO_ERROR; |
| 151 UPerfFunction* pf = new ICUToUnicodePerfFunction("utf-8",(char*)utf8_encSour
ce, LENGTHOF(utf8_encSource), status); |
| 152 if(U_FAILURE(status)){ |
| 153 return NULL; |
| 154 } |
| 155 return pf; |
| 156 } |
| 157 |
| 158 |
| 159 UPerfFunction* ConverterPerformanceTest::TestWinIML2_UTF8_FromUnicode(){ |
| 160 UErrorCode status = U_ZERO_ERROR; |
| 161 UPerfFunction* pf = new WinIMultiLanguage2FromUnicodePerfFunction("utf-8",ut
f8_uniSource, LENGTHOF(utf8_uniSource), status); |
| 162 if(U_FAILURE(status)){ |
| 163 return NULL; |
| 164 } |
| 165 return pf; |
| 166 } |
| 167 |
| 168 UPerfFunction* ConverterPerformanceTest::TestWinIML2_UTF8_ToUnicode(){ |
| 169 UErrorCode status = U_ZERO_ERROR; |
| 170 UPerfFunction* pf = new WinIMultiLanguage2ToUnicodePerfFunction("utf-8",(cha
r*)utf8_encSource, LENGTHOF(utf8_encSource), status); |
| 171 if(U_FAILURE(status)){ |
| 172 return NULL; |
| 173 } |
| 174 return pf; |
| 175 } |
| 176 |
| 177 UPerfFunction* ConverterPerformanceTest::TestWinANSI_UTF8_FromUnicode(){ |
| 178 UErrorCode status = U_ZERO_ERROR; |
| 179 UPerfFunction* pf = new WinANSIFromUnicodePerfFunction("utf-8",utf8_uniSourc
e, LENGTHOF(utf8_uniSource), status); |
| 180 if(U_FAILURE(status)){ |
| 181 return NULL; |
| 182 } |
| 183 return pf; |
| 184 } |
| 185 |
| 186 UPerfFunction* ConverterPerformanceTest::TestWinANSI_UTF8_ToUnicode(){ |
| 187 UErrorCode status = U_ZERO_ERROR; |
| 188 UPerfFunction* pf = new WinANSIToUnicodePerfFunction("utf-8",(char*)utf8_enc
Source, LENGTHOF(utf8_encSource), status); |
| 189 if(U_FAILURE(status)){ |
| 190 return NULL; |
| 191 } |
| 192 return pf; |
| 193 } |
| 194 |
| 195 //################ |
| 196 |
| 197 UPerfFunction* ConverterPerformanceTest::TestICU_Latin1_FromUnicode(){ |
| 198 UErrorCode status = U_ZERO_ERROR; |
| 199 ICUFromUnicodePerfFunction* pf = new ICUFromUnicodePerfFunction("iso-8859-1"
,latin1_uniSource, LENGTHOF(latin1_uniSource), status); |
| 200 if(U_FAILURE(status)){ |
| 201 return NULL; |
| 202 } |
| 203 return pf; |
| 204 } |
| 205 |
| 206 UPerfFunction* ConverterPerformanceTest::TestICU_Latin1_ToUnicode(){ |
| 207 UErrorCode status = U_ZERO_ERROR; |
| 208 UPerfFunction* pf = new ICUToUnicodePerfFunction("iso-8859-1",(char*)latin1_
encSource, LENGTHOF(latin1_encSource), status); |
| 209 if(U_FAILURE(status)){ |
| 210 return NULL; |
| 211 } |
| 212 return pf; |
| 213 } |
| 214 |
| 215 |
| 216 UPerfFunction* ConverterPerformanceTest::TestWinIML2_Latin1_FromUnicode(){ |
| 217 UErrorCode status = U_ZERO_ERROR; |
| 218 UPerfFunction* pf = new WinIMultiLanguage2FromUnicodePerfFunction("iso-8859-
1",latin1_uniSource, LENGTHOF(latin1_uniSource), status); |
| 219 if(U_FAILURE(status)){ |
| 220 return NULL; |
| 221 } |
| 222 return pf; |
| 223 } |
| 224 |
| 225 UPerfFunction* ConverterPerformanceTest::TestWinIML2_Latin1_ToUnicode(){ |
| 226 UErrorCode status = U_ZERO_ERROR; |
| 227 UPerfFunction* pf = new WinIMultiLanguage2ToUnicodePerfFunction("iso-8859-1"
,(char*)latin1_encSource, LENGTHOF(latin1_encSource), status); |
| 228 if(U_FAILURE(status)){ |
| 229 return NULL; |
| 230 } |
| 231 return pf; |
| 232 } |
| 233 |
| 234 UPerfFunction* ConverterPerformanceTest::TestWinANSI_Latin1_FromUnicode(){ |
| 235 UErrorCode status = U_ZERO_ERROR; |
| 236 UPerfFunction* pf = new WinANSIFromUnicodePerfFunction("iso-8859-1",latin1_u
niSource, LENGTHOF(latin1_uniSource), status); |
| 237 if(U_FAILURE(status)){ |
| 238 return NULL; |
| 239 } |
| 240 return pf; |
| 241 } |
| 242 |
| 243 UPerfFunction* ConverterPerformanceTest::TestWinANSI_Latin1_ToUnicode(){ |
| 244 UErrorCode status = U_ZERO_ERROR; |
| 245 UPerfFunction* pf = new WinANSIToUnicodePerfFunction("iso-8859-1",(char*)lat
in1_encSource, LENGTHOF(latin1_encSource), status); |
| 246 if(U_FAILURE(status)){ |
| 247 return NULL; |
| 248 } |
| 249 return pf; |
| 250 } |
| 251 |
| 252 //################## |
| 253 |
| 254 UPerfFunction* ConverterPerformanceTest::TestICU_Latin8_FromUnicode(){ |
| 255 UErrorCode status = U_ZERO_ERROR; |
| 256 ICUFromUnicodePerfFunction* pf = new ICUFromUnicodePerfFunction("iso-8859-8"
,latin8_uniSource, LENGTHOF(latin8_uniSource), status); |
| 257 if(U_FAILURE(status)){ |
| 258 return NULL; |
| 259 } |
| 260 return pf; |
| 261 } |
| 262 |
| 263 UPerfFunction* ConverterPerformanceTest::TestICU_Latin8_ToUnicode(){ |
| 264 UErrorCode status = U_ZERO_ERROR; |
| 265 UPerfFunction* pf = new ICUToUnicodePerfFunction("iso-8859-8",(char*)latin8_
encSource, LENGTHOF(latin8_encSource), status); |
| 266 if(U_FAILURE(status)){ |
| 267 return NULL; |
| 268 } |
| 269 return pf; |
| 270 } |
| 271 |
| 272 |
| 273 UPerfFunction* ConverterPerformanceTest::TestWinIML2_Latin8_FromUnicode(){ |
| 274 UErrorCode status = U_ZERO_ERROR; |
| 275 UPerfFunction* pf = new WinIMultiLanguage2FromUnicodePerfFunction("iso-8859-
8",latin8_uniSource, LENGTHOF(latin8_uniSource), status); |
| 276 if(U_FAILURE(status)){ |
| 277 return NULL; |
| 278 } |
| 279 return pf; |
| 280 } |
| 281 |
| 282 UPerfFunction* ConverterPerformanceTest::TestWinIML2_Latin8_ToUnicode(){ |
| 283 UErrorCode status = U_ZERO_ERROR; |
| 284 UPerfFunction* pf = new WinIMultiLanguage2ToUnicodePerfFunction("iso-8859-8"
,(char*)latin8_encSource, LENGTHOF(latin8_encSource), status); |
| 285 if(U_FAILURE(status)){ |
| 286 return NULL; |
| 287 } |
| 288 return pf; |
| 289 } |
| 290 UPerfFunction* ConverterPerformanceTest::TestWinANSI_Latin8_FromUnicode(){ |
| 291 UErrorCode status = U_ZERO_ERROR; |
| 292 UPerfFunction* pf = new WinANSIFromUnicodePerfFunction("iso-8859-8",latin8_u
niSource, LENGTHOF(latin8_uniSource), status); |
| 293 if(U_FAILURE(status)){ |
| 294 return NULL; |
| 295 } |
| 296 return pf; |
| 297 } |
| 298 |
| 299 UPerfFunction* ConverterPerformanceTest::TestWinANSI_Latin8_ToUnicode(){ |
| 300 UErrorCode status = U_ZERO_ERROR; |
| 301 UPerfFunction* pf = new WinANSIToUnicodePerfFunction("iso-8859-8",(char*)lat
in8_encSource, LENGTHOF(latin8_encSource), status); |
| 302 if(U_FAILURE(status)){ |
| 303 return NULL; |
| 304 } |
| 305 return pf; |
| 306 } |
| 307 |
| 308 //################# |
| 309 |
| 310 |
| 311 UPerfFunction* ConverterPerformanceTest::TestICU_EBCDIC_Arabic_FromUnicode(){ |
| 312 UErrorCode status = U_ZERO_ERROR; |
| 313 ICUFromUnicodePerfFunction* pf = new ICUFromUnicodePerfFunction("x-EBCDIC-Ar
abic",ebcdic_arabic_uniSource, LENGTHOF(ebcdic_arabic_uniSource), status); |
| 314 if(U_FAILURE(status)){ |
| 315 return NULL; |
| 316 } |
| 317 return pf; |
| 318 } |
| 319 |
| 320 UPerfFunction* ConverterPerformanceTest::TestICU_EBCDIC_Arabic_ToUnicode(){ |
| 321 UErrorCode status = U_ZERO_ERROR; |
| 322 UPerfFunction* pf = new ICUToUnicodePerfFunction("x-EBCDIC-Arabic",(char*)eb
cdic_arabic_encSource, LENGTHOF(ebcdic_arabic_encSource), status); |
| 323 if(U_FAILURE(status)){ |
| 324 return NULL; |
| 325 } |
| 326 return pf; |
| 327 } |
| 328 |
| 329 |
| 330 UPerfFunction* ConverterPerformanceTest::TestWinIML2_EBCDIC_Arabic_FromUnicode()
{ |
| 331 UErrorCode status = U_ZERO_ERROR; |
| 332 UPerfFunction* pf = new WinIMultiLanguage2FromUnicodePerfFunction("x-EBCDIC-
Arabic",ebcdic_arabic_uniSource, LENGTHOF(ebcdic_arabic_uniSource), status); |
| 333 if(U_FAILURE(status)){ |
| 334 return NULL; |
| 335 } |
| 336 return pf; |
| 337 } |
| 338 |
| 339 UPerfFunction* ConverterPerformanceTest::TestWinIML2_EBCDIC_Arabic_ToUnicode(){ |
| 340 UErrorCode status = U_ZERO_ERROR; |
| 341 UPerfFunction* pf = new WinIMultiLanguage2ToUnicodePerfFunction("x-EBCDIC-Ar
abic",(char*)ebcdic_arabic_encSource, LENGTHOF(ebcdic_arabic_encSource), status)
; |
| 342 if(U_FAILURE(status)){ |
| 343 return NULL; |
| 344 } |
| 345 return pf; |
| 346 } |
| 347 |
| 348 UPerfFunction* ConverterPerformanceTest::TestWinANSI_EBCDIC_Arabic_FromUnicode()
{ |
| 349 UErrorCode status = U_ZERO_ERROR; |
| 350 UPerfFunction* pf = new WinANSIFromUnicodePerfFunction("x-EBCDIC-Arabic",ebc
dic_arabic_uniSource, LENGTHOF(ebcdic_arabic_uniSource), status); |
| 351 if(U_FAILURE(status)){ |
| 352 return NULL; |
| 353 } |
| 354 return pf; |
| 355 } |
| 356 |
| 357 UPerfFunction* ConverterPerformanceTest::TestWinANSI_EBCDIC_Arabic_ToUnicode(){ |
| 358 UErrorCode status = U_ZERO_ERROR; |
| 359 UPerfFunction* pf = new WinANSIToUnicodePerfFunction("x-EBCDIC-Arabic",(char
*)ebcdic_arabic_encSource, LENGTHOF(ebcdic_arabic_encSource), status); |
| 360 if(U_FAILURE(status)){ |
| 361 return NULL; |
| 362 } |
| 363 return pf; |
| 364 } |
| 365 //################# |
| 366 |
| 367 |
| 368 UPerfFunction* ConverterPerformanceTest::TestICU_SJIS_FromUnicode(){ |
| 369 UErrorCode status = U_ZERO_ERROR; |
| 370 ICUFromUnicodePerfFunction* pf = new ICUFromUnicodePerfFunction("sjis",sjis_
uniSource, LENGTHOF(sjis_uniSource), status); |
| 371 if(U_FAILURE(status)){ |
| 372 return NULL; |
| 373 } |
| 374 return pf; |
| 375 } |
| 376 |
| 377 UPerfFunction* ConverterPerformanceTest::TestICU_SJIS_ToUnicode(){ |
| 378 UErrorCode status = U_ZERO_ERROR; |
| 379 UPerfFunction* pf = new ICUToUnicodePerfFunction("sjis",(char*)sjis_encSourc
e, LENGTHOF(sjis_encSource), status); |
| 380 if(U_FAILURE(status)){ |
| 381 return NULL; |
| 382 } |
| 383 return pf; |
| 384 } |
| 385 |
| 386 |
| 387 UPerfFunction* ConverterPerformanceTest::TestWinIML2_SJIS_FromUnicode(){ |
| 388 UErrorCode status = U_ZERO_ERROR; |
| 389 UPerfFunction* pf = new WinIMultiLanguage2FromUnicodePerfFunction("sjis",sji
s_uniSource, LENGTHOF(sjis_uniSource), status); |
| 390 if(U_FAILURE(status)){ |
| 391 return NULL; |
| 392 } |
| 393 return pf; |
| 394 } |
| 395 |
| 396 UPerfFunction* ConverterPerformanceTest::TestWinIML2_SJIS_ToUnicode(){ |
| 397 UErrorCode status = U_ZERO_ERROR; |
| 398 UPerfFunction* pf = new WinIMultiLanguage2ToUnicodePerfFunction("sjis",(char
*)sjis_encSource, LENGTHOF(sjis_encSource), status); |
| 399 if(U_FAILURE(status)){ |
| 400 return NULL; |
| 401 } |
| 402 return pf; |
| 403 } |
| 404 |
| 405 UPerfFunction* ConverterPerformanceTest::TestWinANSI_SJIS_FromUnicode(){ |
| 406 UErrorCode status = U_ZERO_ERROR; |
| 407 UPerfFunction* pf = new WinANSIFromUnicodePerfFunction("sjis",sjis_uniSource
, LENGTHOF(sjis_uniSource), status); |
| 408 if(U_FAILURE(status)){ |
| 409 return NULL; |
| 410 } |
| 411 return pf; |
| 412 } |
| 413 |
| 414 UPerfFunction* ConverterPerformanceTest::TestWinANSI_SJIS_ToUnicode(){ |
| 415 UErrorCode status = U_ZERO_ERROR; |
| 416 UPerfFunction* pf = new WinANSIToUnicodePerfFunction("sjis",(char*)sjis_encS
ource, LENGTHOF(sjis_encSource), status); |
| 417 if(U_FAILURE(status)){ |
| 418 return NULL; |
| 419 } |
| 420 return pf; |
| 421 } |
| 422 |
| 423 |
| 424 //################# |
| 425 |
| 426 |
| 427 UPerfFunction* ConverterPerformanceTest::TestICU_EUCJP_FromUnicode(){ |
| 428 UErrorCode status = U_ZERO_ERROR; |
| 429 ICUFromUnicodePerfFunction* pf = new ICUFromUnicodePerfFunction("euc-jp",euc
jp_uniSource, LENGTHOF(eucjp_uniSource), status); |
| 430 if(U_FAILURE(status)){ |
| 431 return NULL; |
| 432 } |
| 433 return pf; |
| 434 } |
| 435 |
| 436 UPerfFunction* ConverterPerformanceTest::TestICU_EUCJP_ToUnicode(){ |
| 437 UErrorCode status = U_ZERO_ERROR; |
| 438 UPerfFunction* pf = new ICUToUnicodePerfFunction("euc-jp",(char*)eucjp_encSo
urce, LENGTHOF(eucjp_encSource), status); |
| 439 if(U_FAILURE(status)){ |
| 440 return NULL; |
| 441 } |
| 442 return pf; |
| 443 } |
| 444 |
| 445 |
| 446 UPerfFunction* ConverterPerformanceTest::TestWinIML2_EUCJP_FromUnicode(){ |
| 447 UErrorCode status = U_ZERO_ERROR; |
| 448 UPerfFunction* pf = new WinIMultiLanguage2FromUnicodePerfFunction("euc-jp",e
ucjp_uniSource, LENGTHOF(eucjp_uniSource), status); |
| 449 if(U_FAILURE(status)){ |
| 450 return NULL; |
| 451 } |
| 452 return pf; |
| 453 } |
| 454 |
| 455 UPerfFunction* ConverterPerformanceTest::TestWinIML2_EUCJP_ToUnicode(){ |
| 456 UErrorCode status = U_ZERO_ERROR; |
| 457 UPerfFunction* pf = new WinIMultiLanguage2ToUnicodePerfFunction("euc-jp",(ch
ar*)eucjp_encSource, LENGTHOF(eucjp_encSource), status); |
| 458 if(U_FAILURE(status)){ |
| 459 return NULL; |
| 460 } |
| 461 return pf; |
| 462 } |
| 463 |
| 464 UPerfFunction* ConverterPerformanceTest::TestWinANSI_EUCJP_FromUnicode(){ |
| 465 UErrorCode status = U_ZERO_ERROR; |
| 466 UPerfFunction* pf = new WinANSIFromUnicodePerfFunction("euc-jp",eucjp_uniSou
rce, LENGTHOF(eucjp_uniSource), status); |
| 467 if(U_FAILURE(status)){ |
| 468 return NULL; |
| 469 } |
| 470 return pf; |
| 471 } |
| 472 |
| 473 UPerfFunction* ConverterPerformanceTest::TestWinANSI_EUCJP_ToUnicode(){ |
| 474 UErrorCode status = U_ZERO_ERROR; |
| 475 UPerfFunction* pf = new WinANSIToUnicodePerfFunction("euc-jp",(char*)eucjp_e
ncSource, LENGTHOF(eucjp_encSource), status); |
| 476 if(U_FAILURE(status)){ |
| 477 return NULL; |
| 478 } |
| 479 return pf; |
| 480 } |
| 481 |
| 482 |
| 483 //################# |
| 484 |
| 485 |
| 486 UPerfFunction* ConverterPerformanceTest::TestICU_GB2312_FromUnicode(){ |
| 487 UErrorCode status = U_ZERO_ERROR; |
| 488 ICUFromUnicodePerfFunction* pf = new ICUFromUnicodePerfFunction("gb2312",gb2
312_uniSource, LENGTHOF(gb2312_uniSource), status); |
| 489 if(U_FAILURE(status)){ |
| 490 return NULL; |
| 491 } |
| 492 return pf; |
| 493 } |
| 494 |
| 495 UPerfFunction* ConverterPerformanceTest::TestICU_GB2312_ToUnicode(){ |
| 496 UErrorCode status = U_ZERO_ERROR; |
| 497 UPerfFunction* pf = new ICUToUnicodePerfFunction("gb2312",(char*)gb2312_encS
ource, LENGTHOF(gb2312_encSource), status); |
| 498 if(U_FAILURE(status)){ |
| 499 return NULL; |
| 500 } |
| 501 return pf; |
| 502 } |
| 503 |
| 504 |
| 505 UPerfFunction* ConverterPerformanceTest::TestWinIML2_GB2312_FromUnicode(){ |
| 506 UErrorCode status = U_ZERO_ERROR; |
| 507 UPerfFunction* pf = new WinIMultiLanguage2FromUnicodePerfFunction("gb2312",g
b2312_uniSource, LENGTHOF(gb2312_uniSource), status); |
| 508 if(U_FAILURE(status)){ |
| 509 return NULL; |
| 510 } |
| 511 return pf; |
| 512 } |
| 513 |
| 514 UPerfFunction* ConverterPerformanceTest::TestWinIML2_GB2312_ToUnicode(){ |
| 515 UErrorCode status = U_ZERO_ERROR; |
| 516 UPerfFunction* pf = new WinIMultiLanguage2ToUnicodePerfFunction("gb2312",(ch
ar*)gb2312_encSource, LENGTHOF(gb2312_encSource), status); |
| 517 if(U_FAILURE(status)){ |
| 518 return NULL; |
| 519 } |
| 520 return pf; |
| 521 } |
| 522 |
| 523 UPerfFunction* ConverterPerformanceTest::TestWinANSI_GB2312_FromUnicode(){ |
| 524 UErrorCode status = U_ZERO_ERROR; |
| 525 UPerfFunction* pf = new WinANSIFromUnicodePerfFunction("gb2312",gb2312_uniSo
urce, LENGTHOF(gb2312_uniSource), status); |
| 526 if(U_FAILURE(status)){ |
| 527 return NULL; |
| 528 } |
| 529 return pf; |
| 530 } |
| 531 |
| 532 UPerfFunction* ConverterPerformanceTest::TestWinANSI_GB2312_ToUnicode(){ |
| 533 UErrorCode status = U_ZERO_ERROR; |
| 534 UPerfFunction* pf = new WinANSIToUnicodePerfFunction("gb2312",(char*)gb2312_
encSource, LENGTHOF(gb2312_encSource), status); |
| 535 if(U_FAILURE(status)){ |
| 536 return NULL; |
| 537 } |
| 538 return pf; |
| 539 } |
| 540 |
| 541 //################# |
| 542 |
| 543 |
| 544 UPerfFunction* ConverterPerformanceTest::TestICU_ISO2022KR_FromUnicode(){ |
| 545 UErrorCode status = U_ZERO_ERROR; |
| 546 ICUFromUnicodePerfFunction* pf = new ICUFromUnicodePerfFunction("iso-2022-kr
",iso2022kr_uniSource, LENGTHOF(iso2022kr_uniSource), status); |
| 547 if(U_FAILURE(status)){ |
| 548 return NULL; |
| 549 } |
| 550 return pf; |
| 551 } |
| 552 |
| 553 UPerfFunction* ConverterPerformanceTest::TestICU_ISO2022KR_ToUnicode(){ |
| 554 UErrorCode status = U_ZERO_ERROR; |
| 555 UPerfFunction* pf = new ICUToUnicodePerfFunction("iso-2022-kr",(char*)iso202
2kr_encSource, LENGTHOF(iso2022kr_encSource), status); |
| 556 if(U_FAILURE(status)){ |
| 557 return NULL; |
| 558 } |
| 559 return pf; |
| 560 } |
| 561 |
| 562 |
| 563 UPerfFunction* ConverterPerformanceTest::TestWinIML2_ISO2022KR_FromUnicode(){ |
| 564 UErrorCode status = U_ZERO_ERROR; |
| 565 UPerfFunction* pf = new WinIMultiLanguage2FromUnicodePerfFunction("iso-2022-
kr",iso2022kr_uniSource, LENGTHOF(iso2022kr_uniSource), status); |
| 566 if(U_FAILURE(status)){ |
| 567 return NULL; |
| 568 } |
| 569 return pf; |
| 570 } |
| 571 |
| 572 UPerfFunction* ConverterPerformanceTest::TestWinIML2_ISO2022KR_ToUnicode(){ |
| 573 UErrorCode status = U_ZERO_ERROR; |
| 574 UPerfFunction* pf = new WinIMultiLanguage2ToUnicodePerfFunction("iso-2022-kr
",(char*)iso2022kr_encSource, LENGTHOF(iso2022kr_encSource), status); |
| 575 if(U_FAILURE(status)){ |
| 576 return NULL; |
| 577 } |
| 578 return pf; |
| 579 } |
| 580 |
| 581 UPerfFunction* ConverterPerformanceTest::TestWinANSI_ISO2022KR_FromUnicode(){ |
| 582 UErrorCode status = U_ZERO_ERROR; |
| 583 UPerfFunction* pf = new WinANSIFromUnicodePerfFunction("iso-2022-kr",iso2022
kr_uniSource, LENGTHOF(iso2022kr_uniSource), status); |
| 584 if(U_FAILURE(status)){ |
| 585 return NULL; |
| 586 } |
| 587 return pf; |
| 588 } |
| 589 |
| 590 UPerfFunction* ConverterPerformanceTest::TestWinANSI_ISO2022KR_ToUnicode(){ |
| 591 UErrorCode status = U_ZERO_ERROR; |
| 592 UPerfFunction* pf = new WinANSIToUnicodePerfFunction("iso-2022-kr",(char*)is
o2022kr_encSource, LENGTHOF(iso2022kr_encSource), status); |
| 593 if(U_FAILURE(status)){ |
| 594 return NULL; |
| 595 } |
| 596 return pf; |
| 597 } |
| 598 //################# |
| 599 |
| 600 |
| 601 UPerfFunction* ConverterPerformanceTest::TestICU_ISO2022JP_FromUnicode(){ |
| 602 UErrorCode status = U_ZERO_ERROR; |
| 603 ICUFromUnicodePerfFunction* pf = new ICUFromUnicodePerfFunction("iso-2022-jp
",iso2022jp_uniSource, LENGTHOF(iso2022jp_uniSource), status); |
| 604 if(U_FAILURE(status)){ |
| 605 return NULL; |
| 606 } |
| 607 return pf; |
| 608 } |
| 609 |
| 610 UPerfFunction* ConverterPerformanceTest::TestICU_ISO2022JP_ToUnicode(){ |
| 611 UErrorCode status = U_ZERO_ERROR; |
| 612 UPerfFunction* pf = new ICUToUnicodePerfFunction("iso-2022-jp",(char*)iso202
2jp_encSource, LENGTHOF(iso2022jp_encSource), status); |
| 613 if(U_FAILURE(status)){ |
| 614 return NULL; |
| 615 } |
| 616 return pf; |
| 617 } |
| 618 |
| 619 |
| 620 UPerfFunction* ConverterPerformanceTest::TestWinIML2_ISO2022JP_FromUnicode(){ |
| 621 UErrorCode status = U_ZERO_ERROR; |
| 622 UPerfFunction* pf = new WinIMultiLanguage2FromUnicodePerfFunction("iso-2022-
jp",iso2022jp_uniSource, LENGTHOF(iso2022jp_uniSource), status); |
| 623 if(U_FAILURE(status)){ |
| 624 return NULL; |
| 625 } |
| 626 return pf; |
| 627 } |
| 628 |
| 629 UPerfFunction* ConverterPerformanceTest::TestWinIML2_ISO2022JP_ToUnicode(){ |
| 630 UErrorCode status = U_ZERO_ERROR; |
| 631 UPerfFunction* pf = new WinIMultiLanguage2ToUnicodePerfFunction("iso-2022-jp
",(char*)iso2022jp_encSource, LENGTHOF(iso2022jp_encSource), status); |
| 632 if(U_FAILURE(status)){ |
| 633 return NULL; |
| 634 } |
| 635 return pf; |
| 636 } |
| 637 |
| 638 UPerfFunction* ConverterPerformanceTest::TestWinANSI_ISO2022JP_FromUnicode(){ |
| 639 UErrorCode status = U_ZERO_ERROR; |
| 640 UPerfFunction* pf = new WinANSIFromUnicodePerfFunction("iso-2022-jp",iso2022
jp_uniSource, LENGTHOF(iso2022jp_uniSource), status); |
| 641 if(U_FAILURE(status)){ |
| 642 return NULL; |
| 643 } |
| 644 return pf; |
| 645 } |
| 646 |
| 647 UPerfFunction* ConverterPerformanceTest::TestWinANSI_ISO2022JP_ToUnicode(){ |
| 648 UErrorCode status = U_ZERO_ERROR; |
| 649 UPerfFunction* pf = new WinANSIToUnicodePerfFunction("iso-2022-jp",(char*)is
o2022jp_encSource, LENGTHOF(iso2022jp_encSource), status); |
| 650 if(U_FAILURE(status)){ |
| 651 return NULL; |
| 652 } |
| 653 return pf; |
| 654 } |
OLD | NEW |