示例#1
0
        public void GermanyCalculateTotalTaxDeductions_GivenSalary_Returns_TotalTaxDeductionsValue()
        {
            // Arrange
            var calculator = new GermanPayrollCalculator();

            //Act
            var actual = calculator.CalculateTotalTaxDeductions(600);

            // Assert
            var expected = 204; // TODO:

            actual.Should().Be(expected);
        }
示例#2
0
        public void GermanyCalculateIncomeTax_GivenSalaryLessThanZero_Returns_InvalidInputException()
        {
            // Arrange
            var germanSaleryCalculator = new GermanPayrollCalculator();

            //Act
            Action calculateIncomeTax = () => germanSaleryCalculator.CalculateIncomeTax(-100);

            Action calculateTotalTaxDeductions = () => germanSaleryCalculator.CalculateTotalTaxDeductions(-200);

            // Assert
            string expectedMessage = "Given salary should be greater than zero, received value:";

            calculateIncomeTax.Should().Throw <InvalidInputException>().Where(e => e.Message.StartsWith(expectedMessage));

            calculateTotalTaxDeductions.Should().Throw <InvalidInputException>().Where(e => e.Message.StartsWith(expectedMessage));
        }