Author: ggregory
Date: Mon Aug  8 17:49:50 2011
New Revision: 1155027

URL: http://svn.apache.org/viewvc?rev=1155027&view=rev
Log:
Renamed testSpeedCheck to testSpeedCheckRandom. Made testSpeedCheck 
deterministic.

Modified:
    
commons/proper/codec/trunk/src/test/org/apache/commons/codec/language/bm/BeiderMorseEncoderTest.java

Modified: 
commons/proper/codec/trunk/src/test/org/apache/commons/codec/language/bm/BeiderMorseEncoderTest.java
URL: 
http://svn.apache.org/viewvc/commons/proper/codec/trunk/src/test/org/apache/commons/codec/language/bm/BeiderMorseEncoderTest.java?rev=1155027&r1=1155026&r2=1155027&view=diff
==============================================================================
--- 
commons/proper/codec/trunk/src/test/org/apache/commons/codec/language/bm/BeiderMorseEncoderTest.java
 (original)
+++ 
commons/proper/codec/trunk/src/test/org/apache/commons/codec/language/bm/BeiderMorseEncoderTest.java
 Mon Aug  8 17:49:50 2011
@@ -34,6 +34,8 @@ import org.junit.Test;
  * @since 2.0
  */
 public class BeiderMorseEncoderTest extends StringEncoderAbstractTest {
+    private static final char[] TEST_CHARS = new char[] { 'a', 'b', 'c', 'd', 
'e', 'f', 'g', 'h', 'o', 'u' };
+
     private void assertNotEmpty(BeiderMorseEncoder bmpm, final String value) 
throws EncoderException {
         Assert.assertFalse(value, bmpm.encode(value).equals(""));
     }
@@ -164,23 +166,32 @@ public class BeiderMorseEncoderTest exte
 
     /**
      * Runs between 1.1 and 13 seconds at length 40 for me (Gary Gregory, 
2011/08/06)
-     *  
+     * 
      * @throws EncoderException
      */
     @Test(/* timeout = 20000L */)
-    public void testSpeedCheck() throws EncoderException {
-        char[] chars = new char[] { 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 
'o', 'u' };
-        BeiderMorseEncoder bmpm = createGenericApproxEncoder();
+    public void testSpeedCheckRandom() throws EncoderException {
+        BeiderMorseEncoder bmpm = this.createGenericApproxEncoder();
         StringBuffer stringBuffer = new StringBuffer();
         Random rand = new Random();
-        stringBuffer.append(chars[rand.nextInt(chars.length)]);
-        long start;
+        stringBuffer.append(TEST_CHARS[rand.nextInt(TEST_CHARS.length)]);
         for (int i = 0; i < 40; i++) {
-            start = System.currentTimeMillis();
-            // System.out.println(i + " String to encode:" + 
stringBuffer.toString());
             bmpm.encode(stringBuffer.toString());
-            stringBuffer.append(chars[rand.nextInt(chars.length)]);
-            // System.out.println(i + " Elapsed time in ms:" + 
(System.currentTimeMillis() - start));
+            stringBuffer.append(TEST_CHARS[rand.nextInt(TEST_CHARS.length)]);
+        }
+    }
+
+    @Test(/* timeout = 20000L */)
+    public void testSpeedCheck() throws EncoderException {
+        BeiderMorseEncoder bmpm = this.createGenericApproxEncoder();
+        StringBuffer stringBuffer = new StringBuffer();
+        stringBuffer.append(TEST_CHARS[0]);
+        for (int i = 0, j = 1; i < 40; i++, j++) {
+            if (j == TEST_CHARS.length) {
+                j = 0;
+            }
+            bmpm.encode(stringBuffer.toString());
+            stringBuffer.append(TEST_CHARS[j]);
         }
     }
 }


Reply via email to