我有這種依賴於當前日期的方法。它會檢查今天是星期一,星期一,星期二或星期三,然後提供5天的貨物到貨時間。如果星期四,星期五或星期六,則提供6天的交貨時間來計入週末。如何測試依賴於當前日期的邏輯
private DateTime GetEstimatedArrivalDate()
{
DateTime estimatedDate;
if (DateTime.Now.DayOfWeek >= DayOfWeek.Thursday)
{
estimatedDate = DateTime.Now.Date.AddDays(6);
}
else
{
estimatedDate = DateTime.Now.Date.AddDays(5);
}
return estimatedDate;
}
實際的估計邏輯比較複雜。爲了這個問題,我簡化了它。我的問題是如何爲這樣的事情編寫一個單元測試,這取決於今天的日期?
答案是(幾乎)中的問題「我如何爲這樣的事情寫一個單元測試,取決於今天的日期?」在Mark的答案中重構使用依賴注入的方法。 – 2010-02-17 21:35:28