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('.', ','))); }