public void TimeSpanToWorkingDays(TimeSpanToWorkingDaysCase tCase)
        {
            var result = 0M;

            if (tCase.Result.ShouldFail)
            {
                Assert.Throws <DivideByZeroException>(() => result = Manager.TimeSpanToWorkingDays(tCase.WorkingHours, tCase.TimeSpan));
            }
            else
            {
                Assert.DoesNotThrow(() => result = Manager.TimeSpanToWorkingDays(tCase.WorkingHours, tCase.TimeSpan));
                Assert.AreEqual(result, tCase.Result.Value);
            }
        }
            public IEnumerator GetEnumerator()
            {
                var obj1 = new TimeSpanToWorkingDaysCase
                {
                    TimeSpan     = TimeSpan.FromHours(20),
                    WorkingHours = 5,
                    Result       = new ExpectedResult <decimal>
                    {
                        Value      = 4,
                        ShouldFail = false
                    }
                };
                var obj2 = new TimeSpanToWorkingDaysCase
                {
                    TimeSpan     = TimeSpan.FromHours(20),
                    WorkingHours = 5,
                    Result       = new ExpectedResult <decimal>
                    {
                        Value      = 4,
                        ShouldFail = false
                    }
                };
                var obj3 = new TimeSpanToWorkingDaysCase
                {
                    Result = new ExpectedResult <decimal>
                    {
                        Value      = 4,
                        ShouldFail = true
                    }
                };
                var obj4 = new TimeSpanToWorkingDaysCase
                {
                    WorkingHours = 0,
                    Result       = new ExpectedResult <decimal>
                    {
                        ShouldFail = true
                    }
                };
                var obj5 = new TimeSpanToWorkingDaysCase
                {
                    TimeSpan     = TimeSpan.FromHours(4),
                    WorkingHours = 0,
                    Result       = new ExpectedResult <decimal>
                    {
                        ShouldFail = true
                    }
                };
                var obj6 = new TimeSpanToWorkingDaysCase
                {
                    TimeSpan     = TimeSpan.FromHours(0),
                    WorkingHours = 4,
                    Result       = new ExpectedResult <decimal>
                    {
                        Value      = 0,
                        ShouldFail = false
                    }
                };

                yield return
                    (new TestCaseData(obj1).SetName("TimeSpanToWorkingDays: " +
                                                    JsonConvert.SerializeObject(obj1).Replace('.', ',')));

                yield return
                    (new TestCaseData(obj2).SetName("TimeSpanToWorkingDays: " +
                                                    JsonConvert.SerializeObject(obj2).Replace('.', ',')));

                yield return
                    (new TestCaseData(obj3).SetName("TimeSpanToWorkingDays: " +
                                                    JsonConvert.SerializeObject(obj3).Replace('.', ',')));

                yield return
                    (new TestCaseData(obj4).SetName("TimeSpanToWorkingDays: " +
                                                    JsonConvert.SerializeObject(obj4).Replace('.', ',')));

                yield return
                    (new TestCaseData(obj5).SetName("TimeSpanToWorkingDays: " +
                                                    JsonConvert.SerializeObject(obj3).Replace('.', ',')));

                yield return
                    (new TestCaseData(obj6).SetName("TimeSpanToWorkingDays: " +
                                                    JsonConvert.SerializeObject(obj4).Replace('.', ',')));
            }