예제 #1
0
        public void SimpleWholeNumberAdd_ShouldAdd()
        {
            //Arrange
            int  firstValue  = 1;
            long secondValue = 21474836470;
            var  expected    = 21474836471;

            //Act
            var actual = WeirdCalculator.SimpleWholeNumberAdd(firstValue, secondValue);

            //Assert
            Assert.AreEqual(expected, actual);
        }
예제 #2
0
        public void ComplexAdd_ShouldAdd()
        {
            //Arrange
            var firstValue  = '1';
            var secondValue = "3.3";
            var expected    = 4.3m;

            //Act
            var actual = WeirdCalculator.ComplexAdd(firstValue, secondValue);

            //Assert
            Assert.AreEqual(expected, actual);
        }
예제 #3
0
        public void ComplexDecimalAdd_WhenGivenDifferentFloatingTypes_ShouldReturnZeroWhenFloatIsBeyondDecimal()
        {
            //Arrange
            var firstValue  = float.MaxValue;
            var secondValue = 1.2d;
            var thirdValue  = 1.3m;
            var expected    = 0m;

            //Act
            var actual = WeirdCalculator.ComplexDecimalAdd(firstValue, secondValue, thirdValue);

            //Assert
            Assert.AreEqual(expected, actual);
        }
예제 #4
0
        public void ComplexDecimalAdd_WhenGivenDifferentFloatingTypes_ShouldAddIfTheyCanAllFitIntoDecimals()
        {
            //Arrange
            var firstValue  = 1.1f;
            var secondValue = 1.2d;
            var thirdValue  = 1.3m;
            var expected    = 3.6m;

            //Act
            var actual = WeirdCalculator.ComplexDecimalAdd(firstValue, secondValue, thirdValue);

            //Assert
            Assert.AreEqual(expected, actual);
        }
예제 #5
0
        public void SimpleDecimalAdd_ShouldAddValuesAndAssumeNoDataLossWillHappen()
        {
            //Arrange
            var firstValue  = 1.1f;
            var secondValue = 1.2d;
            var thirdValue  = 1.3m;
            var expected    = 3.6m;

            //Act
            var actual = WeirdCalculator.SimpleDecimalAdd(firstValue, secondValue, thirdValue);

            //Assert
            Assert.AreEqual(expected, actual);
        }
예제 #6
0
        public void ConditionalMath_ShouldAddAndReturnNegativeValue_WhenValuesAreNegativeAndReturnNegativeIsTrue()
        {
            //Arrange
            var firstValue     = -1;
            var secondValue    = -2;
            var returnNegative = true;
            var expected       = -3m;

            //Act
            var actual = WeirdCalculator.ConditionalMath(firstValue, secondValue, returnNegative);

            //Assert
            Assert.AreEqual(expected, actual);
        }
예제 #7
0
        public void ConditionalMath_ShouldAddAndReturnPositiveValue_WhenReturnNegativeIsFalse()
        {
            //Arrange
            var firstValue     = 1;
            var secondValue    = 2;
            var returnNegative = false;
            var expected       = 3m;

            //Act
            var actual = WeirdCalculator.ConditionalMath(firstValue, secondValue, returnNegative);

            //Assert
            Assert.AreEqual(expected, actual);
        }