1*0e209d39SAndroid Build Coastguard Worker#!/usr/bin/perl 2*0e209d39SAndroid Build Coastguard Worker# ******************************************************************** 3*0e209d39SAndroid Build Coastguard Worker# * COPYRIGHT: 4*0e209d39SAndroid Build Coastguard Worker# * © 2016 and later: Unicode, Inc. and others. 5*0e209d39SAndroid Build Coastguard Worker# * License & terms of use: http://www.unicode.org/copyright.html 6*0e209d39SAndroid Build Coastguard Worker# * Copyright (c) 2002-2007, International Business Machines 7*0e209d39SAndroid Build Coastguard Worker# * Corporation and others. All Rights Reserved. 8*0e209d39SAndroid Build Coastguard Worker# ******************************************************************** 9*0e209d39SAndroid Build Coastguard Worker 10*0e209d39SAndroid Build Coastguard Workeruse strict; 11*0e209d39SAndroid Build Coastguard Worker 12*0e209d39SAndroid Build Coastguard Worker#Assume we are running outside of the ICU4J source 13*0e209d39SAndroid Build Coastguard Workeruse lib 'svn-icu4j/src/com/ibm/icu/dev/test/perf/perldriver'; 14*0e209d39SAndroid Build Coastguard Worker 15*0e209d39SAndroid Build Coastguard Workeruse PerfFramework4j; 16*0e209d39SAndroid Build Coastguard Worker 17*0e209d39SAndroid Build Coastguard Worker#--------------------------------------------------------------------- 18*0e209d39SAndroid Build Coastguard Worker# Test class 19*0e209d39SAndroid Build Coastguard Workermy $TESTCLASS = 'com.ibm.icu.dev.test.perf.UCharacterPerf'; 20*0e209d39SAndroid Build Coastguard Worker 21*0e209d39SAndroid Build Coastguard Workermy $options = { 22*0e209d39SAndroid Build Coastguard Worker "title"=>"UnicodeCharacter Property performance regression (ICU4J 3.6 and 3.8)", 23*0e209d39SAndroid Build Coastguard Worker "headers"=>"ICU4J36 ICU4J38", 24*0e209d39SAndroid Build Coastguard Worker "operationIs"=>"code point", 25*0e209d39SAndroid Build Coastguard Worker "timePerOperationIs"=>"Time per code point", 26*0e209d39SAndroid Build Coastguard Worker "passes"=>"10", 27*0e209d39SAndroid Build Coastguard Worker "time"=>"5", 28*0e209d39SAndroid Build Coastguard Worker "outputType"=>"HTML", 29*0e209d39SAndroid Build Coastguard Worker "dataDir"=>"svn-icu4j/src/com/ibm/icu/dev/test/perf/data/collation", 30*0e209d39SAndroid Build Coastguard Worker "outputDir"=>"svn-icu4j/results_ICU4J" 31*0e209d39SAndroid Build Coastguard Worker }; 32*0e209d39SAndroid Build Coastguard Worker 33*0e209d39SAndroid Build Coastguard Worker# programs 34*0e209d39SAndroid Build Coastguard Worker 35*0e209d39SAndroid Build Coastguard Workermy $jvm1 = "java -classpath svn-icu4j/classes $TESTCLASS"; 36*0e209d39SAndroid Build Coastguard Workermy $jvm2 = "java -classpath svn-icu4j_3-6/classes $TESTCLASS"; 37*0e209d39SAndroid Build Coastguard Worker 38*0e209d39SAndroid Build Coastguard Workermy $dataFiles = ""; 39*0e209d39SAndroid Build Coastguard Workermy $pat = '0 ffff'; 40*0e209d39SAndroid Build Coastguard Worker 41*0e209d39SAndroid Build Coastguard Workermy $tests = { 42*0e209d39SAndroid Build Coastguard Worker "Digit ($pat)", ["$jvm1 Digit $pat" , "$jvm2 Digit $pat" ], 43*0e209d39SAndroid Build Coastguard Worker "GetNumericValue ($pat)", ["$jvm1 GetNumericValue $pat" , "$jvm2 GetNumericValue $pat" ], 44*0e209d39SAndroid Build Coastguard Worker "GetType ($pat)", ["$jvm1 GetType $pat" , "$jvm2 GetType $pat" ], 45*0e209d39SAndroid Build Coastguard Worker "IsDefined ($pat)", ["$jvm1 IsDefined $pat" , "$jvm2 IsDefined $pat" ], 46*0e209d39SAndroid Build Coastguard Worker "IsDigit ($pat)", ["$jvm1 IsDigit $pat" , "$jvm2 IsDigit $pat" ], 47*0e209d39SAndroid Build Coastguard Worker "IsIdentifierIgnorable ($pat)", ["$jvm1 IsIdentifierIgnorable $pat" , "$jvm2 IsIdentifierIgnorable $pat" ], 48*0e209d39SAndroid Build Coastguard Worker "IsISOControl ($pat)", ["$jvm1 IsISOControl $pat" , "$jvm2 IsISOControl $pat" ], 49*0e209d39SAndroid Build Coastguard Worker "IsLetter ($pat)", ["$jvm1 IsLetter $pat" , "$jvm2 IsLetter $pat" ], 50*0e209d39SAndroid Build Coastguard Worker "IsLetterOrDigit ($pat)", ["$jvm1 IsLetterOrDigit $pat" , "$jvm2 IsLetterOrDigit $pat" ], 51*0e209d39SAndroid Build Coastguard Worker "IsLowerCase ($pat)", ["$jvm1 IsLowerCase $pat" , "$jvm2 IsLowerCase $pat" ], 52*0e209d39SAndroid Build Coastguard Worker "IsSpaceChar ($pat)", ["$jvm1 IsSpaceChar $pat" , "$jvm2 IsSpaceChar $pat" ], 53*0e209d39SAndroid Build Coastguard Worker "IsTitleCase ($pat)", ["$jvm1 IsTitleCase $pat" , "$jvm2 IsTitleCase $pat" ], 54*0e209d39SAndroid Build Coastguard Worker "IsUnicodeIdentifierPart ($pat)", ["$jvm1 IsUnicodeIdentifierPart $pat" , "$jvm2 IsUnicodeIdentifierPart $pat" ], 55*0e209d39SAndroid Build Coastguard Worker "IsUnicodeIdentifierStart ($pat)", ["$jvm1 IsUnicodeIdentifierStart $pat" , "$jvm2 IsUnicodeIdentifierStart $pat" ], 56*0e209d39SAndroid Build Coastguard Worker "IsUpperCase ($pat)", ["$jvm1 IsUpperCase $pat" , "$jvm2 IsUpperCase $pat" ], 57*0e209d39SAndroid Build Coastguard Worker "IsWhiteSpace ($pat)", ["$jvm1 IsWhiteSpace $pat" , "$jvm2 IsWhiteSpace $pat" ] 58*0e209d39SAndroid Build Coastguard Worker }; 59*0e209d39SAndroid Build Coastguard Worker 60*0e209d39SAndroid Build Coastguard Worker 61*0e209d39SAndroid Build Coastguard WorkerrunTests($options, $tests, $dataFiles); 62*0e209d39SAndroid Build Coastguard Worker 63*0e209d39SAndroid Build Coastguard Worker 64