10 Stimmen

Wie testet man Logik, die vom aktuellen Datum abhängig ist?

Ich habe diese Methode, die vom aktuellen Datum abhängig ist. Sie prüft, ob heute Sonntag, Montag, Dienstag oder Mittwoch ist, und gibt dann eine Vorlaufzeit von 5 Tagen für die Ankunft der versendeten Artikel an. Wenn es Donnerstag, Freitag oder Samstag ist, gibt es 6 Tage Vorlaufzeit, um das Wochenende zu berücksichtigen.

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; 
}

Die eigentliche Logik der Schätzung ist komplexer. Ich habe sie für die Zwecke dieser Frage vereinfacht. Meine Frage ist, wie schreibe ich einen Unit-Test für etwas wie dieses, das vom heutigen Datum abhängt?

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X