private ArabicToRomanConverter CreateArabicToRomanConverter() { IArabicNumeralValidator arabicNumeralValidator = new ArabicNumeralValidator(); DigitConverterList digitConverterList = CreateDigitConverterList(); return(new ArabicToRomanConverter(arabicNumeralValidator, digitConverterList)); }
private DigitConverterList CreateDigitConverterList() { DigitConverterList digitConverterList = new DigitConverterList(); digitConverterList.Add(new SimpleDigitConverter(RomanDigit.M)); digitConverterList.Add(new EscalatingDigitConverter(RomanDigit.C, RomanDigit.D, RomanDigit.M)); digitConverterList.Add(new EscalatingDigitConverter(RomanDigit.X, RomanDigit.L, RomanDigit.C)); digitConverterList.Add(new EscalatingDigitConverter(RomanDigit.I, RomanDigit.V, RomanDigit.X)); return(digitConverterList); }