public void Should_Throw_ArgumentOutOfRangeException(DateTime currentDate, Enums.SalaryFrequency salaryFrequency, int day, int maxValue)
        {
            var paymentDateCalculator = new PaymentDateCalculator(currentDate);

            Action act = () => paymentDateCalculator.CalculateNextSalaryDate(new SalaryDateCalculation
            {
                SalaryFrequency = salaryFrequency,
                Day             = day
            });

            act.Should().Throw <ArgumentOutOfRangeException>()
            .WithMessage($"Day must be bigger than 0 and smaller than { maxValue }. (Parameter 'day')\nActual value was { day }.");
        }
        public void Should_Pass_All_TestData_CalculateNextSalaryDate
        (
            DateTime currentDate,
            IEnumerable <Holiday> holidays,
            Enums.SalaryFrequency salaryFrequency,
            int day,
            DateTime expectedDate
        )
        {
            var paymentDateCalculator = new PaymentDateCalculator(currentDate, holidays);

            var nextSalaryPaymentDate = paymentDateCalculator.CalculateNextSalaryDate(new SalaryDateCalculation
            {
                SalaryFrequency = salaryFrequency,
                Day             = day
            });

            nextSalaryPaymentDate.Should().Be(expectedDate);
        }