blob: 4a1ffa86420534db2724e592738086c97c5a9105 [file] [log] [blame]
#!/usr/bin/perl
# ********************************************************************
# * COPYRIGHT:
# * Copyright (c) 2002-2007, International Business Machines
# * Corporation and others. All Rights Reserved.
# ********************************************************************
use strict;
#Assume we are running outside of the ICU source
use lib './ICU-3.0/ICU/source/test/perf/perldriver';
use PerfFramework;
my $options = {
"title"=>"Unicode String performance regression (ICU 2.8 and 3.0)",
"headers"=>"ICU28 ICU30",
"operationIs"=>"Unicode String",
"passes"=>"10",
"time"=>"5",
#"outputType"=>"HTML",
"dataDir"=>"c:/src/perf/data",
"outputDir"=>"results_ICU4C"
};
# programs
my $p1 = "icu-2.8/icu/bin/stringperf28.exe -b -u";
my $p2 = "icu-3.0/icu/bin/stringperf30.exe -b -u";
my $dataFiles = {
"",
[
"TestNames_Asian.txt",
"TestNames_Chinese.txt",
"TestNames_Japanese.txt",
"TestNames_Japanese_h.txt",
"TestNames_Japanese_k.txt",
"TestNames_Korean.txt",
"TestNames_Latin.txt",
"TestNames_SerbianSH.txt",
"TestNames_SerbianSR.txt",
"TestNames_Thai.txt",
"Testnames_Russian.txt",
# "th18057.txt",
# "thesis.txt",
# "vfear11a.txt",
]
};
my $tests = {
"Object Construction(empty string)", ["$p1 TestCtor" , "$p2 TestCtor" ],
"Object Construction(single char)", ["$p1 TestCtor1" , "$p2 TestCtor1" ],
"Object Construction(another string)", ["$p1 TestCtor2" , "$p2 TestCtor2" ],
"Object Construction(string literal)", ["$p1 TestCtor3" , "$p2 TestCtor3" ],
"String Assignment(helper)", ["$p1 TestAssign" , "$p2 TestAssign" ],
"String Assignment(string literal)", ["$p1 TestAssign1" , "$p2 TestAssign1" ],
"String Assignment(another string)", ["$p1 TestAssign2" , "$p2 TestAssign2" ],
"Get String or Character", ["$p1 TestGetch" , "$p2 TestGetch" ],
"Concatenation", ["$p1 TestCatenate" , "$p2 TestCatenate" ],
"String Scanning(char)", ["$p1 TestScan" , "$p2 TestScan" ],
"String Scanning(string)", ["$p1 TestScan1" , "$p2 TestScan1" ],
"String Scanning(char set)", ["$p1 TestScan2" , "$p2 TestScan2" ],
};
runTests($options, $tests, $dataFiles);