Exemple #1
0
        public void ConvertInputStringToReversePolishSignature_CorrectValue()
        {
            var          parser = new ParserArithmeticExpression();
            const string inputArithmeticExpression = "(VII*IX)*(IX+(LVII*I))";

            //Your constant expectedReversePolishSignature scares me
            const string expectedReversePolishSignature = "$VII$$IX$*$IX$$LVII$$I$*+*";
            var          actualReversePolishSignature   = parser.ConvertInputStringToReversePolishSignature(inputArithmeticExpression);

            Assert.AreEqual(expectedReversePolishSignature, actualReversePolishSignature);
        }
Exemple #2
0
        public void ConvertRomanNumberToArabic_CorrectValue()
        {
            if (!IsInitializedDictionary)
            {
                InitializeDictionary();
            }

            var parser = new ParserArithmeticExpression();

            foreach (var romanNumber in dictionaryOfArabicAndRomanNumbers.Values)
            {
                var arabicNumber = dictionaryOfArabicAndRomanNumbers.FirstOrDefault(x => x.Value == romanNumber).Key;;

                var expectedArabicNumber = arabicNumber;
                var actualArabicNumberAfterConverting = parser.ConvertRomanNumberToArabic(romanNumber);
                Assert.AreEqual(expectedArabicNumber, actualArabicNumberAfterConverting);
            }
        }
Exemple #3
0
        public void RomanCalculatorUnitTest_CorrectnessConvertingRomanNumbersToArabic()
        {
            if (!IsInitializedDictionary)
            {
                InitializeDictionary();
            }

            var parser = new ParserArithmeticExpression();

            foreach (var arabicNumber in dictionaryOfArabicAndRomanNumbers.Keys)
            {
                var romanNumber = dictionaryOfArabicAndRomanNumbers[arabicNumber];

                var expectedArabicNumber = arabicNumber;
                var actualArabicNumberAfterConverting = parser.ConvertRomanNumberToArabic(romanNumber);
                Assert.AreEqual(expectedArabicNumber, actualArabicNumberAfterConverting);
            }
        }