public void MustUnderstandTwoSymbolsAsII() { RomanNumberConverter roman = new RomanNumberConverter(); int number = roman.Converts("II"); Assert.AreEqual(2, number); }
public void MustUnderstandFourSymbolsTwoByTwoAsXXII() { RomanNumberConverter roman = new RomanNumberConverter(); int number = roman.Converts("XXII"); Assert.AreEqual(22, number); }
public void MustUnderstandNumbersAsIX() { RomanNumberConverter roman = new RomanNumberConverter(); int number = roman.Converts("IX"); Assert.AreEqual(9, number); }
public void MustUnderstandComplexNumbersAsXXIV() { RomanNumberConverter roman = new RomanNumberConverter(); int number = roman.Converts("XXIV"); Assert.AreEqual(24, number); }
public void MustUnderstandTheSymbolV() { RomanNumberConverter roman = new RomanNumberConverter(); int number = roman.Converts("V"); Assert.AreEqual(5, number); }
public void BuilderRomanNumberTest(string symbol, int value) { var romanNumberConverter = new RomanNumberConverter(); var number = romanNumberConverter.Convert(symbol); Assert.AreEqual(value, number); }
public void Given_ValidRomanSymbol_Then_ConvertSymbolToDigit(string romanSymbol, int expected) { // Act int numeralDigit = RomanNumberConverter.Convert(romanSymbol); // Assert numeralDigit.Should().Be(expected); }
public void Given_RomanNumber_Then_ConvertToNumeralNumber(string romanNumber, int expected) { // Act int numeralNumber = RomanNumberConverter.Convert(romanNumber); // Asset numeralNumber.Should().Be(expected); }
public NumberConverterFactory() { _converters = new Dictionary <string, INumberConverter>(); _converters["Numerical"] = new NumericalNumberConverter(); _converters["Binary"] = new BinaryNumberConverter(); _converters["Hexadecimal"] = new HexadecimalNumberConverter(); _converters["Roman"] = new RomanNumberConverter(); _converters["Octal"] = new OctalNumberConverter(); }
public void NineReturnsIX() { // Arrange var romanNumberConverter = new RomanNumberConverter(); // Act var actual = romanNumberConverter.Convert(9); // Assert Assert.AreEqual("IX", actual, "9 should be translated to IX"); }
public void SixReturnsVI() { // Arrange var romanNumberConverter = new RomanNumberConverter(); // Act var actual = romanNumberConverter.Convert(6); // Assert Assert.AreEqual("VI", actual, "6 should be translated to VI"); }
public void TenReturnsX() { // Arrange var romanNumberConverter = new RomanNumberConverter(); // Act var actual = romanNumberConverter.Convert(10); // Assert Assert.AreEqual("X", actual, "10 should be translated to X"); }
public void OneReturnsI() { // Arrange var romanNumberConverter = new RomanNumberConverter(); // Act var actual = romanNumberConverter.Convert(1); // Assert Assert.AreEqual("I", actual, "1 should be translated to I"); }
public void FourReturnsIV() { // Arrange var romanNumberConverter = new RomanNumberConverter(); // Act var actual = romanNumberConverter.Convert(4); // Assert Assert.AreEqual("IV", actual, "4 should be translated to IV"); }
public void FiveReturnsV() { // Arrange var romanNumberConverter = new RomanNumberConverter(); // Act var actual = romanNumberConverter.Convert(5); // Assert Assert.AreEqual("V", actual, "5 should be translated to V"); }
public void Should_Convert_Roman_To_Number() { // arrange RomanNumberConverter rtn = new RomanNumberConverter(); // act int number1 = rtn.Convert("MMVI"); // assert Assert.AreEqual(4, number1); }
public void ParseRomanToInt(int expected, string roman) { //arrange var parser = new RomanNumberConverter(); // act var result = parser.ConvertRomanToInt(roman); //assert Assert.That(result, Is.EqualTo(expected)); }
public void Given_MultipleInvalidRomanSymbols_Then_ThrowInvalidRomanSymbolException() { // Arrange const string invalidSymbols = "RP"; // Act Action action = () => RomanNumberConverter.Convert(invalidSymbols); // Asset action.Should() .Throw <InvalidRomanSymbolException>() .WithMessage("R, P are invalid roman symbols"); }
public void Given_InvalidRomanSymbol_Then_ThrowInvalidRomanSymbolException() { // Arrange const string invalidSymbol = "R"; // Act Action action = () => RomanNumberConverter.Convert(invalidSymbol); // Asset action.Should() .Throw <InvalidRomanSymbolException>() .WithMessage("R is an invalid roman symbol"); }
/// <summary>文字列内の数値を取得します。</summary> /// <param name="source">対象の文字列を表す string。</param> /// <param name="type">開始文字の種類を表す <see cref="CharTypes"/>。</param> /// <param name="pos">開始位置を表す int。</param> /// <param name="value">取得した数値を表す long。</param> /// <returns>数値を取得出来た場合は <see langword="true"/>、それ以外の場合は <see langword="false"/>。</returns> private bool GetNumber(string source, CharTypes type, ref int pos, out long value) { INumberComverter number = null; switch (type) { case CharTypes.Number: number = new NumberConverter(source[pos]); break; case CharTypes.RomanNumber: number = new RomanNumberConverter(source[pos]); break; case CharTypes.JpRomanNumber: number = new JpRomanNumberConverter(source[pos]); break; case CharTypes.CircleNumber: number = new CircleNumberConverter(source[pos]); break; case CharTypes.KanjiNumber: number = new KanjiNumberConverter(source[pos]); break; } for (int i = pos + 1; i < source.Length; i++) { if (number.AddChar(source[i]) == false) { break; } } if (number.IsError == false) { value = number.Value; pos += number.Length; } else { value = 0; } return(number.IsError == false); }
public void Need_Convert_VII_For_7() { var Conversor = new RomanNumberConverter(); Assert.AreEqual(7, Conversor.ConvertToInt("VII")); }
public void Need_Convert_III_For_3() { var Conversor = new RomanNumberConverter(); Assert.AreEqual(3, Conversor.ConvertToInt("III")); }
public void Throw_Excepetion_With_No_Knowledge_Chars() { var Conversor = new RomanNumberConverter(); Conversor.ConvertToInt('Z'); }
public void Need_Convert_V_For_10() { var Conversor = new RomanNumberConverter(); Assert.AreEqual(10, Conversor.ConvertToInt('X')); }
public void Need_Convert_I_For_1() { var Conversor = new RomanNumberConverter(); Assert.AreEqual(1, Conversor.ConvertToInt('I')); }
public void Need_Convert_IX_For_9() { var Conversor = new RomanNumberConverter(); Assert.AreEqual(9, Conversor.ConvertToInt("IX")); }
public void Need_Convert_IV_For_4() { var Conversor = new RomanNumberConverter(); Assert.AreEqual(4, Conversor.ConvertToInt("IV")); }
public void RomanNumberConverter_ToRoman_CorrectOutput(string expectedValue, int num) { var result = RomanNumberConverter.ToRoman(num); Assert.AreEqual(expectedValue, result); }
public void RomanNumberConverter_ToNumber_CorrectOutput(string num, int expectedValue) { var result = RomanNumberConverter.ToNumberWithValidation(num); Assert.AreEqual(expectedValue, result); }
public void RomanNumberConverter_ToNumber_InvalidCases_ExceptionThrown(string num) { Assert.Throws <ArgumentException>(() => RomanNumberConverter.ToNumberWithValidation(num)); }