At last update to JUnit 4.x
[zxing.git] / core / test / src / com / google / zxing / qrcode / encoder / MaskUtilTestCase.java
index 4b202bc..2a59a46 100644 (file)
 
 package com.google.zxing.qrcode.encoder;
 
-import com.google.zxing.common.ByteMatrix;
-import junit.framework.TestCase;
+import org.junit.Assert;
+import org.junit.Test;
 
 /**
  * @author satorux@google.com (Satoru Takabayashi) - creator
  * @author mysen@google.com (Chris Mysen) - ported from C++
  */
 
-public final class MaskUtilTestCase extends TestCase {
+public final class MaskUtilTestCase extends Assert {
+
+  @Test
   public void testApplyMaskPenaltyRule1() {
     {
-      ByteMatrix matrix = new ByteMatrix(1, 4);
+      ByteMatrix matrix = new ByteMatrix(4, 1);
       matrix.set(0, 0, 0);
-      matrix.set(0, 1, 0);
-      matrix.set(0, 2, 0);
-      matrix.set(0, 3, 0);
+      matrix.set(1, 0, 0);
+      matrix.set(2, 0, 0);
+      matrix.set(3, 0, 0);
       assertEquals(0, MaskUtil.applyMaskPenaltyRule1(matrix));
     }
     {  // Horizontal.
-      ByteMatrix matrix = new ByteMatrix(1, 6);
-      matrix.set(0, 0, 0);
-      matrix.set(0, 1, 0);
-      matrix.set(0, 2, 0);
-      matrix.set(0, 3, 0);
-      matrix.set(0, 4, 0);
-      matrix.set(0, 5, 1);
-      assertEquals(3, MaskUtil.applyMaskPenaltyRule1(matrix));
-      matrix.set(0, 5, 0);
-      assertEquals(4, MaskUtil.applyMaskPenaltyRule1(matrix));
-    }
-    {  // Vertical.
       ByteMatrix matrix = new ByteMatrix(6, 1);
       matrix.set(0, 0, 0);
       matrix.set(1, 0, 0);
@@ -58,8 +48,21 @@ public final class MaskUtilTestCase extends TestCase {
       matrix.set(5, 0, 0);
       assertEquals(4, MaskUtil.applyMaskPenaltyRule1(matrix));
     }
+    {  // Vertical.
+      ByteMatrix matrix = new ByteMatrix(1, 6);
+      matrix.set(0, 0, 0);
+      matrix.set(0, 1, 0);
+      matrix.set(0, 2, 0);
+      matrix.set(0, 3, 0);
+      matrix.set(0, 4, 0);
+      matrix.set(0, 5, 1);
+      assertEquals(3, MaskUtil.applyMaskPenaltyRule1(matrix));
+      matrix.set(0, 5, 0);
+      assertEquals(4, MaskUtil.applyMaskPenaltyRule1(matrix));
+    }
   }
 
+  @Test
   public void testApplyMaskPenaltyRule2() {
     {
       ByteMatrix matrix = new ByteMatrix(1, 1);
@@ -69,70 +72,39 @@ public final class MaskUtilTestCase extends TestCase {
     {
       ByteMatrix matrix = new ByteMatrix(2, 2);
       matrix.set(0, 0, 0);
-      matrix.set(0, 1, 0);
       matrix.set(1, 0, 0);
+      matrix.set(0, 1, 0);
       matrix.set(1, 1, 1);
       assertEquals(0, MaskUtil.applyMaskPenaltyRule2(matrix));
     }
     {
       ByteMatrix matrix = new ByteMatrix(2, 2);
       matrix.set(0, 0, 0);
-      matrix.set(0, 1, 0);
       matrix.set(1, 0, 0);
+      matrix.set(0, 1, 0);
       matrix.set(1, 1, 0);
       assertEquals(3, MaskUtil.applyMaskPenaltyRule2(matrix));
     }
     {
       ByteMatrix matrix = new ByteMatrix(3, 3);
       matrix.set(0, 0, 0);
-      matrix.set(0, 1, 0);
-      matrix.set(0, 2, 0);
       matrix.set(1, 0, 0);
-      matrix.set(1, 1, 0);
-      matrix.set(1, 2, 0);
       matrix.set(2, 0, 0);
+      matrix.set(0, 1, 0);
+      matrix.set(1, 1, 0);
       matrix.set(2, 1, 0);
+      matrix.set(0, 2, 0);
+      matrix.set(1, 2, 0);
       matrix.set(2, 2, 0);
       // Four instances of 2x2 blocks.
       assertEquals(3 * 4, MaskUtil.applyMaskPenaltyRule2(matrix));
     }
   }
 
+  @Test
   public void testApplyMaskPenaltyRule3() {
     {
       // Horizontal 00001011101.
-      ByteMatrix matrix = new ByteMatrix(1, 11);
-      matrix.set(0, 0, 0);
-      matrix.set(0, 1, 0);
-      matrix.set(0, 2, 0);
-      matrix.set(0, 3, 0);
-      matrix.set(0, 4, 1);
-      matrix.set(0, 5, 0);
-      matrix.set(0, 6, 1);
-      matrix.set(0, 7, 1);
-      matrix.set(0, 8, 1);
-      matrix.set(0, 9, 0);
-      matrix.set(0, 10, 1);
-      assertEquals(40, MaskUtil.applyMaskPenaltyRule3(matrix));
-    }
-    {
-      // Horizontal 10111010000.
-      ByteMatrix matrix = new ByteMatrix(1, 11);
-      matrix.set(0, 0, 1);
-      matrix.set(0, 1, 0);
-      matrix.set(0, 2, 1);
-      matrix.set(0, 3, 1);
-      matrix.set(0, 4, 1);
-      matrix.set(0, 5, 0);
-      matrix.set(0, 6, 1);
-      matrix.set(0, 7, 0);
-      matrix.set(0, 8, 0);
-      matrix.set(0, 9, 0);
-      matrix.set(0, 10, 0);
-      assertEquals(40, MaskUtil.applyMaskPenaltyRule3(matrix));
-    }
-    {
-      // Vertical 00001011101.
       ByteMatrix matrix = new ByteMatrix(11, 1);
       matrix.set(0, 0, 0);
       matrix.set(1, 0, 0);
@@ -148,7 +120,7 @@ public final class MaskUtilTestCase extends TestCase {
       assertEquals(40, MaskUtil.applyMaskPenaltyRule3(matrix));
     }
     {
-      // Vertical 10111010000.
+      // Horizontal 10111010000.
       ByteMatrix matrix = new ByteMatrix(11, 1);
       matrix.set(0, 0, 1);
       matrix.set(1, 0, 0);
@@ -163,8 +135,41 @@ public final class MaskUtilTestCase extends TestCase {
       matrix.set(10, 0, 0);
       assertEquals(40, MaskUtil.applyMaskPenaltyRule3(matrix));
     }
+    {
+      // Vertical 00001011101.
+      ByteMatrix matrix = new ByteMatrix(1, 11);
+      matrix.set(0, 0, 0);
+      matrix.set(0, 1, 0);
+      matrix.set(0, 2, 0);
+      matrix.set(0, 3, 0);
+      matrix.set(0, 4, 1);
+      matrix.set(0, 5, 0);
+      matrix.set(0, 6, 1);
+      matrix.set(0, 7, 1);
+      matrix.set(0, 8, 1);
+      matrix.set(0, 9, 0);
+      matrix.set(0, 10, 1);
+      assertEquals(40, MaskUtil.applyMaskPenaltyRule3(matrix));
+    }
+    {
+      // Vertical 10111010000.
+      ByteMatrix matrix = new ByteMatrix(1, 11);
+      matrix.set(0, 0, 1);
+      matrix.set(0, 1, 0);
+      matrix.set(0, 2, 1);
+      matrix.set(0, 3, 1);
+      matrix.set(0, 4, 1);
+      matrix.set(0, 5, 0);
+      matrix.set(0, 6, 1);
+      matrix.set(0, 7, 0);
+      matrix.set(0, 8, 0);
+      matrix.set(0, 9, 0);
+      matrix.set(0, 10, 0);
+      assertEquals(40, MaskUtil.applyMaskPenaltyRule3(matrix));
+    }
   }
 
+  @Test
   public void testApplyMaskPenaltyRule4() {
     {
       // Dark cell ratio = 0%
@@ -174,20 +179,20 @@ public final class MaskUtilTestCase extends TestCase {
     }
     {
       // Dark cell ratio = 5%
-      ByteMatrix matrix = new ByteMatrix(1, 2);
+      ByteMatrix matrix = new ByteMatrix(2, 1);
       matrix.set(0, 0, 0);
       matrix.set(0, 0, 1);
       assertEquals(0, MaskUtil.applyMaskPenaltyRule4(matrix));
     }
     {
       // Dark cell ratio = 66.67%
-      ByteMatrix matrix = new ByteMatrix(1, 6);
+      ByteMatrix matrix = new ByteMatrix(6, 1);
       matrix.set(0, 0, 0);
-      matrix.set(0, 1, 1);
-      matrix.set(0, 2, 1);
-      matrix.set(0, 3, 1);
-      matrix.set(0, 4, 1);
-      matrix.set(0, 5, 0);
+      matrix.set(1, 0, 1);
+      matrix.set(2, 0, 1);
+      matrix.set(3, 0, 1);
+      matrix.set(4, 0, 1);
+      matrix.set(5, 0, 0);
       assertEquals(30, MaskUtil.applyMaskPenaltyRule4(matrix));
     }
   }
@@ -206,6 +211,7 @@ public final class MaskUtilTestCase extends TestCase {
   }
 
   // See mask patterns on the page 43 of JISX0510:2004.
+  @Test
   public void testGetDataMaskBit() {
     int[][] mask0 = {
       {1, 0, 1, 0, 1, 0},