19dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally/*
29dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally * Copyright (C) 2015 Google Inc.
39dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally *
49dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally * Licensed under the Apache License, Version 2.0 (the "License");
59dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally * you may not use this file except in compliance with the License.
69dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally * You may obtain a copy of the License at
79dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally *
89dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally * http://www.apache.org/licenses/LICENSE-2.0
99dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally *
109dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally * Unless required by applicable law or agreed to in writing, software
119dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally * distributed under the License is distributed on an "AS IS" BASIS,
129dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
139dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally * See the License for the specific language governing permissions and
149dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally * limitations under the License.
159dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally */
169dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally
179dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerallypackage benchmarks.regression;
189dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally
199dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerallyimport java.net.IDN;
209dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally
21ea13f8291a92b6f47f50011da1d5e8c107984bc3Paul Duffinpublic class IdnBenchmark {
229dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally
239dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally    public void timeToUnicode(int reps) {
249dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally        for (int i = 0; i < reps; i++) {
259dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally            IDN.toASCII("fass.de");
269dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally            IDN.toASCII("faß.de");
279dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally            IDN.toASCII("fäß.de");
289dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally            IDN.toASCII("a\u200Cb");
299dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally            IDN.toASCII("öbb.at");
309dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally            IDN.toASCII("abc・日本.co.jp");
319dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally            IDN.toASCII("日本.co.jp");
329dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally            IDN.toASCII("x\u0327\u0301.de");
339dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally            IDN.toASCII("σόλοσ.gr");
349dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally        }
359dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally    }
369dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally
379dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally    public void timeToAscii(int reps) {
389dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally        for (int i = 0; i < reps; i++) {
399dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally            IDN.toUnicode("xn--fss-qla.de");
409dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally            IDN.toUnicode("xn--n00d.com");
419dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally            IDN.toUnicode("xn--bb-eka.at");
429dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally            IDN.toUnicode("xn--og-09a.de");
439dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally            IDN.toUnicode("xn--53h.de");
449dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally            IDN.toUnicode("xn--iny-zx5a.de");
459dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally            IDN.toUnicode("xn--abc-rs4b422ycvb.co.jp");
469dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally            IDN.toUnicode("xn--wgv71a.co.jp");
479dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally            IDN.toUnicode("xn--x-xbb7i.de");
489dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally            IDN.toUnicode("xn--wxaikc6b.gr");
499dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally            IDN.toUnicode("xn--wxaikc6b.xn--gr-gtd9a1b0g.de");
509dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally        }
519dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally    }
529dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally
539dcac8229f1efd676f3e3b7e8a2f9a2c3eda04d2Rayhaan Jaufeerally}
54