public void Add_NegativesNumbers_ThrowError()
        {
            var numbers  = "1\n-2,-3";
            var exeption = Assert.Throws <Exception>(() => StringCalc.Add(numbers));

            Assert.AreEqual("negatives not allowed:-2 -3", exeption.Message);
        }
        public void When_input_is_numbers_output_sum(string numbers, int sum)
        {
            var romanNumeral = new StringCalc();
            var result       = romanNumeral.Add(numbers);

            Assert.Equal(sum, result);
        }
示例#3
0
        public void Add_negativeNumber_returnsException()
        {
            //arrange
            var sut = new StringCalc();

            //act

            //assert
            Assert.Throws <ArgumentException>(() => { sut.Add("-1\n2,-3"); }, "negatives not allowed");
        }
        public void SingleStringEqualsNumber()
        {
            //arrange
            var calculator = new StringCalc();
            //act
            int res = calculator.Add("2");

            //assert
            Assert.AreEqual(2, res);
        }
        public void EmptyStringEqualsZero()
        {
            //arrange
            var calculator = new StringCalc();
            //act
            int res = calculator.Add("");

            //assert
            Assert.AreEqual(0, res);
        }
示例#6
0
        public void add_getsNegatives_throwsExeption()
        {
            //arrange
            string     input          = "-55,-11";
            StringCalc stringCalcTest = new StringCalc();

            //act
            var result = stringCalcTest.Add(input);
            //assert
        }
示例#7
0
        public void Add_diffSeparators_returnsTheirSum()
        {
            //arrange
            var sut = new StringCalc();        //SUT - system under tests

            //act
            var result = sut.Add("//;\n1;2");

            //assert
            Assert.AreEqual(3, result);
        }
示例#8
0
        public void Add_numberMoreThen1k_returnsTheirSum()
        {
            //arrange
            var sut = new StringCalc();        //SUT - system under tests

            //act
            var result = sut.Add("1000, 2");

            //assert
            Assert.AreEqual(2, result);
        }
示例#9
0
        public void Add_Over1kNumber_skipOVer1K()
        {
            //arrange
            var sut = new StringCalc();        //SUT - system under tests

            //act
            var result = sut.Add("999,5,1020");

            //assert
            Assert.AreEqual(1004, result);
        }
示例#10
0
        public void Add_allCharsDelimiters_returnsSumOfAllNumbers()
        {
            //arrange
            var sut = new StringCalc();        //SUT - system under tests

            //act
            var result = sut.Add("//[%][a]\n1%2a3");

            //assert
            Assert.AreEqual(6, result);
        }
示例#11
0
        public void Add_varSeparator_ShouldAcknowledgeIt()
        {
            //arrange
            var sut = new StringCalc();        //SUT - system under tests

            //act
            var result = sut.Add("//x\n1;x2");

            //assert
            Assert.AreEqual(3, result);
        }
示例#12
0
        public void Add_singleNumberInput_returnNumber()
        {
            //arrange
            var sut = new StringCalc();

            //act
            var result = sut.Add("5");

            //assert
            Assert.AreEqual(5, result);
        }
示例#13
0
        public void Add_addDoubleSepratorWithManySpaceInBetween_returnsTheirSum()
        {
            //arrange
            var sut = new StringCalc();        //SUT - system under tests

            //act
            var result = sut.Add("1\n                          \n, 2,3");

            //assert
            Assert.AreEqual(6, result);
        }
示例#14
0
        public void Add_twoNumbersSeparatedByComma_returnsTheirSum()
        {
            //arrange
            var sut = new StringCalc();        //SUT - system under tests

            //act
            var result = sut.Add("1,2");

            //assert
            Assert.AreEqual(3, result);
        }
示例#15
0
        public void Add_threeNumbers_returnsTheirSum()
        {
            //arrange
            var sut = new StringCalc();        //SUT - system under tests

            //act
            var result = sut.Add("25,1452,22");

            //assert
            Assert.AreEqual(47, result);
        }
示例#16
0
        public void Add_empty_input_returnZero()
        {
            //arrange
            var sut = new StringCalc();             //SUT - system under tests

            //act
            var result = sut.Add("");

            //assert
            Assert.AreEqual(0, result);
        }
示例#17
0
        public void Add_fourNumbersDividedByComma_returnsTheirSum()
        {
            //arrange
            var sut = new StringCalc();        //SUT - system under tests

            //act
            var result = sut.Add("25,1452,22,134234234");

            //assert
            Assert.AreEqual(47, result);
        }
示例#18
0
        public void Add_addNumbersSeparatedByN_returnsTheirSum()
        {
            //arrange
            var sut = new StringCalc();        //SUT - system under tests

            //act
            var result = sut.Add("1\n2,3");

            //assert
            Assert.AreEqual(6, result);
        }
示例#19
0
        public void add_getsLongSeparator_shouldReturnSum()
        {
            //arrange
            string     input          = "//[xxx]\n1xxx2xxx3";
            StringCalc stringCalcTest = new StringCalc();
            //act
            var result = stringCalcTest.Add(input);

            //assert
            Assert.AreEqual(6, result);
        }
示例#20
0
        public void Add_oneInInput_returnOne()
        {
            //arrange
            var sut = new StringCalc();

            //act
            var result = sut.Add("1");

            //assert
            Assert.AreEqual(1, result);
        }
示例#21
0
        public void add_getsIntLargerThan1000_returnsSum()
        {
            //arrange
            string     input          = "1000,25";
            StringCalc stringCalcTest = new StringCalc();
            //act
            var result = stringCalcTest.Add(input);

            //assert
            Assert.AreEqual(25, result);
        }
示例#22
0
        public void add_getsIntegersWithEscapeChar_returnsSum()
        {
            //arrange
            string     input          = "69\n44,77";
            StringCalc stringCalcTest = new StringCalc();

            //act
            var result = stringCalcTest.Add(input);

            //assert
            Assert.AreEqual(190, result);
        }
        public void NumberPlusNumberEqualsAnotherNumber()
        {
            //arrange
            var calculator = new StringCalc();

            //act
            calculator.Parse("3,2");
            int res = calculator.Add("3,2");

            //assert
            Assert.AreEqual(5, res);
        }
示例#24
0
        public void add_getsEmptyString_returnsSum()
        {
            //arrange
            string     input          = "69,44";
            StringCalc stringCalcTest = new StringCalc();

            //act
            var result = stringCalcTest.Add(input);

            //assert
            Assert.AreEqual(113, result);
        }
示例#25
0
 public void Add_ShouldReturn3For_1_newline_2()
 {
     var calc = new StringCalc();
     Assert.Equal(3, calc.Add("1\n2"));
 }
示例#26
0
 public void Add_ShouldIgnoreNumbersGreaterThan1000()
 {
     var calc = new StringCalc();
     Assert.Equal(2, calc.Add("2,1001"));
 }
示例#27
0
 public void Add_ShouldSupportChangingDelimiter()
 {
     var calc = new StringCalc();
     Assert.Equal(3, calc.Add("//;\n1;2")); // "//[delimiter]\n[numbers]"
 }
示例#28
0
 public void Add_ShouldSupportMultipleMultiCharacterDelimiters()
 {
     var calc = new StringCalc();
     Assert.Equal(6, calc.Add("//[***][%%%]\n1***2%%%3")); // "//[delim1][delim2]\n[numbers]"
 }
示例#29
0
 public void Add_ShouldThrowExceptionOnNegative()
 {
     var calc = new StringCalc();
     var exception = Assert.Throws<ArgumentOutOfRangeException>(() => calc.Add("-1"));
     Assert.Equal("negatives not allowed: -1\r\nParameter name: input", exception.Message);
 }
示例#30
0
        private int Get_SumOfNumbers(string numbers)
        {
            var calculatedResult = _objStringCalcTest.Add(numbers);

            return(calculatedResult);
        }
示例#31
0
 public void Add_ShouldReturn1For_1()
 {
     var calc = new StringCalc();
     Assert.Equal(1, calc.Add("1"));
 }
 public void ReturnZeroForEmptyString()
 {
     _target.Add(string.Empty).Should().Be(0);
 }
示例#33
0
 public void Add_ShouldReturn0ForEmptyString()
 {
     var calc = new StringCalc();
     Assert.Equal(0, calc.Add(string.Empty));
 }
示例#34
0
        public void should_return_zero_string_empty()
        {
            // ARRANGE & ACT
            int total = _sut.Add("");

            // ASSERT
            total.Should().Be(0);
        }
 public void Add_Numbers_ReturnSum(int expected, string numbers)
 {
     Assert.AreEqual(expected, StringCalc.Add(numbers));
 }