public void TestConvert_Simple() { var input = TestDataset1.Create(); var numberOfDays = input.Days.Length; var numberOfSantas = 2; var actual = Converter.Convert(input, 0); Assert.AreEqual(numberOfDays * numberOfSantas, actual.SantaIds.Length); Assert.AreEqual(TestDataset1.SantaId1, actual.SantaIds[0]); Assert.AreEqual(TestDataset1.SantaId2, actual.SantaIds[1]); Assert.AreEqual(TestDataset1.SantaId1, actual.SantaIds[2]); Assert.AreEqual(TestDataset1.SantaId2, actual.SantaIds[3]); }
public void TestConvert_Additional() { var input = TestDataset1.Create(); var actual = Converter.Convert(input, 1); CheckSantas(actual); CheckVisits(actual); CheckUnavailable(actual); CheckDesired(actual); CheckStartEnd(actual); CheckNumberOfSantas(actual); CheckNumberOfVisits(actual); CheckOverallStart(actual); CheckOverallEnd(actual); CheckGetDayFromSanta(actual); }
public void TestGetRealDesiredLength() { var data = new RoutingData(TestDataset1.Create()); var durationDay1 = TestDataset1.EndDay1 - TestDataset1.StartDay1; var durationDay2 = TestDataset1.EndDay2 - TestDataset1.StartDay2; var tests = new List <(int expected, (int from, int to) desired)> { (0, (TestDataset1.StartDay1, TestDataset1.StartDay1)), (durationDay1, (TestDataset1.StartDay1, TestDataset1.EndDay1)), (durationDay1, (TestDataset1.StartDay1, TestDataset1.EndDay1 + 100)), (durationDay1 - 100, (TestDataset1.StartDay1, TestDataset1.EndDay1 - 100)), (durationDay1, (TestDataset1.StartDay1 - 100, TestDataset1.EndDay1)), (durationDay1 - 100, (TestDataset1.StartDay1 + 100, TestDataset1.EndDay1)), (Math.Max(durationDay1, durationDay2), (TestDataset1.StartDay1, TestDataset1.EndDay2)), (100, (TestDataset1.StartDay2 + 100, TestDataset1.StartDay2 + 200)), }; foreach (var(expected, desired) in tests) { Assert.AreEqual(expected, Routing.Algorithm.Utility.GetRealDesiredLength(data, desired)); } }