From 3a832b99bf3f82cfe39de776b5e15db6c8ddff1a Mon Sep 17 00:00:00 2001 From: Jesse Plamondon-Willard Date: Sun, 26 Nov 2017 14:54:32 -0500 Subject: add date.DaysSinceStart property, add unit tests, update release notes (#390) --- src/SMAPI.Tests/Utilities/SDateTests.cs | 53 +++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) (limited to 'src/SMAPI.Tests/Utilities/SDateTests.cs') diff --git a/src/SMAPI.Tests/Utilities/SDateTests.cs b/src/SMAPI.Tests/Utilities/SDateTests.cs index 86a0d3d0..b89d8857 100644 --- a/src/SMAPI.Tests/Utilities/SDateTests.cs +++ b/src/SMAPI.Tests/Utilities/SDateTests.cs @@ -81,6 +81,59 @@ namespace StardewModdingAPI.Tests.Utilities Assert.Throws(() => _ = new SDate(day, season, year), "Constructing the invalid date didn't throw the expected exception."); } + /**** + ** DayOfWeek + ****/ + [Test(Description = "Assert the day of week.")] + [TestCase("01 spring Y1", ExpectedResult = System.DayOfWeek.Monday)] + [TestCase("02 spring Y2", ExpectedResult = System.DayOfWeek.Tuesday)] + [TestCase("03 spring Y3", ExpectedResult = System.DayOfWeek.Wednesday)] + [TestCase("04 spring Y4", ExpectedResult = System.DayOfWeek.Thursday)] + [TestCase("05 spring Y5", ExpectedResult = System.DayOfWeek.Friday)] + [TestCase("06 spring Y6", ExpectedResult = System.DayOfWeek.Saturday)] + [TestCase("07 spring Y7", ExpectedResult = System.DayOfWeek.Sunday)] + [TestCase("08 summer Y8", ExpectedResult = System.DayOfWeek.Monday)] + [TestCase("09 summer Y9", ExpectedResult = System.DayOfWeek.Tuesday)] + [TestCase("10 summer Y10", ExpectedResult = System.DayOfWeek.Wednesday)] + [TestCase("11 summer Y11", ExpectedResult = System.DayOfWeek.Thursday)] + [TestCase("12 summer Y12", ExpectedResult = System.DayOfWeek.Friday)] + [TestCase("13 summer Y13", ExpectedResult = System.DayOfWeek.Saturday)] + [TestCase("14 summer Y14", ExpectedResult = System.DayOfWeek.Sunday)] + [TestCase("15 fall Y15", ExpectedResult = System.DayOfWeek.Monday)] + [TestCase("16 fall Y16", ExpectedResult = System.DayOfWeek.Tuesday)] + [TestCase("17 fall Y17", ExpectedResult = System.DayOfWeek.Wednesday)] + [TestCase("18 fall Y18", ExpectedResult = System.DayOfWeek.Thursday)] + [TestCase("19 fall Y19", ExpectedResult = System.DayOfWeek.Friday)] + [TestCase("20 fall Y20", ExpectedResult = System.DayOfWeek.Saturday)] + [TestCase("21 fall Y21", ExpectedResult = System.DayOfWeek.Sunday)] + [TestCase("22 winter Y22", ExpectedResult = System.DayOfWeek.Monday)] + [TestCase("23 winter Y23", ExpectedResult = System.DayOfWeek.Tuesday)] + [TestCase("24 winter Y24", ExpectedResult = System.DayOfWeek.Wednesday)] + [TestCase("25 winter Y25", ExpectedResult = System.DayOfWeek.Thursday)] + [TestCase("26 winter Y26", ExpectedResult = System.DayOfWeek.Friday)] + [TestCase("27 winter Y27", ExpectedResult = System.DayOfWeek.Saturday)] + [TestCase("28 winter Y28" + "", ExpectedResult = System.DayOfWeek.Sunday)] + public DayOfWeek DayOfWeek(string dateStr) + { + // act + return this.GetDate(dateStr).DayOfWeek; + } + + /**** + ** DaysSinceStart + ****/ + [Test(Description = "Assert the number of days since 01 spring Y1 (inclusive).")] + [TestCase("01 spring Y1", ExpectedResult = 1)] + [TestCase("02 spring Y1", ExpectedResult = 2)] + [TestCase("28 spring Y1", ExpectedResult = 28)] + [TestCase("01 summer Y1", ExpectedResult = 29)] + [TestCase("01 summer Y2", ExpectedResult = 141)] + public int DaysSinceStart(string dateStr) + { + // act + return this.GetDate(dateStr).DaysSinceStart; + } + /**** ** ToString ****/ -- cgit