I moved a chunk of the histogram/black point code out of BaseMonochromeBitmapSource...
[zxing.git] / core / test / src / com / google / zxing / common / BlackPointEstimatorTestCase.java
diff --git a/core/test/src/com/google/zxing/common/BlackPointEstimatorTestCase.java b/core/test/src/com/google/zxing/common/BlackPointEstimatorTestCase.java
new file mode 100644 (file)
index 0000000..d780e9f
--- /dev/null
@@ -0,0 +1,43 @@
+/*
+ * Copyright 2008 ZXing authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.google.zxing.common;
+
+import com.google.zxing.ReaderException;
+import junit.framework.TestCase;
+
+/**
+ * @author Sean Owen
+ */
+public final class BlackPointEstimatorTestCase extends TestCase {
+
+  public void testBasic() throws ReaderException {
+    int[] histogram = { 0, 0, 11, 43, 37, 18, 3, 1, 0, 0, 13, 36, 24, 0, 11, 2 };
+    int point = BlackPointEstimator.findBestValley(histogram);
+    assertEquals(8, point);
+  }
+
+  public void testTooLittleRange() {
+    try {
+      int[] histogram = { 0, 0, 0, 0, 0, 0, 1, 43, 48, 18, 3, 1, 0, 0, 0, 0 };
+      BlackPointEstimator.findBestValley(histogram);
+      fail("Should have thrown an exception");
+    } catch (ReaderException re) {
+      // good
+    }
+  }
+
+}
\ No newline at end of file