/* * Copyright 2003-2006 Rick Knowles <winstone-devel at lists sourceforge net> * Distributed under the terms of either: * - the common development and distribution license (CDDL), v1.0; or * - the GNU Lesser General Public License, v2.1 or later */ package winstone.testCase; import junit.framework.TestCase; import winstone.WinstoneResourceBundle; /** * Simple tests for the string replacer * * @author <a href="mailto:rick_knowles@hotmail.com">Rick Knowles</a> * @version $Id: WinstoneResourceBundleTest.java,v 1.1 2006/11/09 05:39:43 rickknowles Exp $ */ public class WinstoneResourceBundleTest extends TestCase { public static void testGlobalReplace() throws Exception { assertEquals("One token", "Foo = bar squared", WinstoneResourceBundle.globalReplace( "Foo = [#0] squared", "[#0]", "bar")); assertEquals("Repeated token", "Foo = bar bar squared", WinstoneResourceBundle.globalReplace( "Foo = [#0] [#0] squared", "[#0]", "bar")); assertEquals("Two tokens", "Foo = blah bar squared", WinstoneResourceBundle.globalReplace( "Foo = [#1] [#0] squared", new String[][] {{"[#0]", "bar"}, {"[#1]", "blah"}})); } // public static void testSpeed() throws Exception { // String tokens[][] = new String[20][2]; // for (int n = 0; n < tokens.length; n++) { // tokens[n] = new String[] {"[#" + n + "]", "token" + n}; // } // Random rnd = new Random(); // String inputs[] = new String[5000]; // for (int n = 0; n < inputs.length; n++) { // inputs[n] = ""; // for (int k = 0; k < tokens.length; k++) { // inputs[n] += "[#" + (rnd.nextInt() % tokens.length) + "] abc"; // } // } // // long startTime = System.currentTimeMillis(); // for (int n = 0; n < inputs.length; n++) { // WinstoneResourceBundle.globalReplace(inputs[n], tokens); // } // System.out.println("Replaced " + tokens.length + " tokens in " + inputs.length + " strings in " + // (System.currentTimeMillis() - startTime) + "ms"); // } }