import org.fest.assertions.api.StringAssert; import org.junit.Ignore; import org.junit.Test; import static org.fest.assertions.api.Assertions.assertThat; /** * Coding Dojo Session * Given a positive integer number (eg 42) determine its Roman numeral representation as a String (eg "XLII"). * http://cyber-dojo.org/setup/show/ * Date: 22/07/2015 **/ public class RomanNumeralTest { @Test public void it_converts_a_1_into_I() { assertRomanConversion(1).isEqualTo("I"); } @Test public void it_converts_a_5_to_V() { assertRomanConversion(5).isEqualTo("V"); } @Test public void it_converts_a_10_to_X() { assertRomanConversion(10).isEqualTo("X"); } @Test public void it_converts_a_2_to_II() { assertRomanConversion(2).isEqualTo("II"); } @Test public void it_converts_a_4_to_IV() { assertRomanConversion(4).isEqualTo("IV"); } @Test public void it_converts_a_6_to_VI() { assertRomanConversion(6).isEqualTo("VI"); } @Test public void it_converts_a_9_to_IX() { assertRomanConversion(9).isEqualTo("IX"); } @Test public void it_converts_a_11_to_XI() { assertRomanConversion(11).isEqualTo("XI"); } @Test public void it_converts_a_12_to_XII() { assertRomanConversion(12).isEqualTo("XII"); } @Test public void it_converts_a_14_to_XIV() { assertRomanConversion(14).isEqualTo("XIV"); } @Test public void it_converts_a_20_to_XX() { assertRomanConversion(20).isEqualTo("XX"); } @Test public void it_converts_a_25_to_XXV() { assertRomanConversion(25).isEqualTo("XXV"); } @Test public void it_converts_a_30_to_XXX() { assertRomanConversion(30).isEqualTo("XXX"); } @Test public void it_converts_a_50_to_L() { assertRomanConversion(50).isEqualTo("L"); } @Test public void it_converts_a_40_to_XL() { assertRomanConversion(40).isEqualTo("XL"); } @Test public void it_converts_a_500_to_D() { assertRomanConversion(500).isEqualTo("D"); } @Ignore @Test public void it_converts_a_400_to_CD() { assertRomanConversion(400).isEqualTo("CD"); } @Ignore @Test public void acceptance_test() { assertRomanConversion(1990).isEqualTo("MCMXC"); assertRomanConversion(2008).isEqualTo("MMVIII"); assertRomanConversion(99).isEqualTo("XCIX"); assertRomanConversion(47).isEqualTo("XLVII"); } private StringAssert assertRomanConversion(int arabic) { return assertThat(RomanNumeral.convertNumber(arabic)); } }