Disable test that is flaky on OpenJDK 7 only for now

This commit is contained in:
Sean Owen 2014-02-25 11:42:23 +00:00
parent c49c8dfa46
commit e9ff0501c7
2 changed files with 7 additions and 18 deletions

View file

@ -40,7 +40,6 @@ abstract class AbstractErrorCorrectionTestCase extends Assert {
} }
} }
/*
static int[] erase(int[] received, int howMany, Random random) { static int[] erase(int[] received, int howMany, Random random) {
BitSet erased = new BitSet(received.length); BitSet erased = new BitSet(received.length);
int[] erasures = new int[howMany]; int[] erasures = new int[howMany];
@ -57,22 +56,9 @@ abstract class AbstractErrorCorrectionTestCase extends Assert {
} }
return erasures; return erasures;
} }
*/
static Random getRandom() { static Random getRandom() {
return new SecureRandom(new byte[] {(byte) 0xDE, (byte) 0xAD, (byte) 0xBE, (byte) 0xEF}); return new SecureRandom(new byte[] {(byte) 0xDE, (byte) 0xAD, (byte) 0xBE, (byte) 0xEF});
} }
/*
static void assertArraysEqual(int[] expected,
int expectedOffset,
int[] actual,
int actualOffset,
int length) {
for (int i = 0; i < length; i++) {
assertEquals(expected[expectedOffset + i], actual[actualOffset + i]);
}
}
*/
} }

View file

@ -18,6 +18,7 @@ package com.google.zxing.pdf417.decoder.ec;
import com.google.zxing.ChecksumException; import com.google.zxing.ChecksumException;
import org.junit.Ignore;
import org.junit.Test; import org.junit.Test;
import java.util.Random; import java.util.Random;
@ -49,7 +50,7 @@ public final class ErrorCorrectionTestCase extends AbstractErrorCorrectionTestCa
private static final int EC_LEVEL = 5; private static final int EC_LEVEL = 5;
private static final int ERROR_LIMIT = (1 << (EC_LEVEL + 1)) - 3; private static final int ERROR_LIMIT = (1 << (EC_LEVEL + 1)) - 3;
private static final int MAX_ERRORS = ERROR_LIMIT / 2; private static final int MAX_ERRORS = ERROR_LIMIT / 2;
//private static final int MAX_ERASURES = ERROR_LIMIT; private static final int MAX_ERASURES = ERROR_LIMIT;
private final ErrorCorrection ec = new ErrorCorrection(); private final ErrorCorrection ec = new ErrorCorrection();
@ -80,11 +81,13 @@ public final class ErrorCorrectionTestCase extends AbstractErrorCorrectionTestCa
} }
} }
@Ignore("Unresolved flakiness with OpenJDK 7 only")
@Test @Test
public void testTooManyErrors() { public void testTooManyErrors() {
int[] received = PDF417_TEST_WITH_EC.clone(); int[] received = PDF417_TEST_WITH_EC.clone();
Random random = getRandom(); Random random = getRandom();
corrupt(received, MAX_ERRORS + 3, random); // +3 since the algo can actually correct 2 more than it should here // +3 since the algorithm can actually correct 2 more than it should here
corrupt(received, MAX_ERRORS + 3, random);
try { try {
checkDecode(received); checkDecode(received);
fail("Should not have decoded"); fail("Should not have decoded");
@ -93,7 +96,7 @@ public final class ErrorCorrectionTestCase extends AbstractErrorCorrectionTestCa
} }
} }
/* @Ignore("Erasures not implemented yet")
@Test @Test
public void testMaxErasures() throws ChecksumException { public void testMaxErasures() throws ChecksumException {
Random random = getRandom(); Random random = getRandom();
@ -104,6 +107,7 @@ public final class ErrorCorrectionTestCase extends AbstractErrorCorrectionTestCa
} }
} }
@Ignore("Erasures not implemented yet")
@Test @Test
public void testTooManyErasures() { public void testTooManyErasures() {
Random random = getRandom(); Random random = getRandom();
@ -116,7 +120,6 @@ public final class ErrorCorrectionTestCase extends AbstractErrorCorrectionTestCa
// good // good
} }
} }
*/
private void checkDecode(int[] received) throws ChecksumException { private void checkDecode(int[] received) throws ChecksumException {
checkDecode(received, new int[0]); checkDecode(received, new int[0]);