import org.junit.Test;
import org.junit.Ignore;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import java.util.Arrays;
import java.util.Collection;
import static org.junit.Assert.assertEquals;
@RunWith(Parameterized.class)
public class OctalTest {
private String octalNumberAsString;
private int decimalNumber;
@Parameterized.Parameters(name = "{index}: expected {1} when converting \"{0}\" from octal to decimal.")
public static Collection<Object[]> data() {
return Arrays.asList(new Object[][]{
{"1", 1},
{"10", 8},
{"17", 15},
{"11", 9},
{"130", 88},
{"2047", 1063},
{"7777", 4095},
{"1234567", 342391},
{"carrot", 0},
{"8", 0},
{"9", 0},
{"6789", 0},
{"abc1z", 0},
{"011", 9}
});
}
public OctalTest(String octalNumberAsString, int decimalNumber) {
this.octalNumberAsString = octalNumberAsString;
this.decimalNumber = decimalNumber;
}
@Test
public void test() {
Octal octal = new Octal(octalNumberAsString);
assertEquals(decimalNumber, octal.getDecimal());
}
}