public void ExtractDataToPositionMap() { using (var scope = TimeStub.CreateStubbedScope()) { scope.OverrideNow(new DateTime(2014, 1, 1)); MonthlyHeuristicsExtractor extractor = ConstructForFilePath(testFile); HeuristicsExtractionResult result = extractor.ExtractDayToPositionMap(); Expect(result.Heuristics.Count, EqualTo(31)); Expect(result.Heuristics.Keys.Min(), EqualTo(1)); Expect(result.Heuristics.Keys.Max(), EqualTo(31)); Expect(result.LogDate, EqualTo(new DateTime(2013, 3, 1, 0, 0, 0))); AssertData(result, 1, 0, 0); AssertData(result, 2, 0, 0); AssertData(result, 3, 0, 8); AssertData(result, 4, 449, 0); AssertData(result, 6, 449, 4); AssertData(result, 7, 665, 2); AssertData(result, 15, 775, 2); AssertData(result, 16, 890, 0); AssertData(result, 31, 890, 0); } }
public void ExtractForBadEntriesAtEndOfFile() { MonthlyHeuristicsExtractor extractor = ConstructForFilePath(fileThatGoesBeyondMonthDays); var result = extractor.ExtractDayToPositionMap(); AssertData(result, 29, 0); AssertData(result, 30, 4); Assert.Catch <Exception>(() => { var impossibleDay = result.Heuristics[31]; }); }
public void ExtractForEvent201412() { using (var scope = TimeStub.CreateStubbedScope()) { scope.SetAllLocalTimes(new DateTime(2014, 12, 15)); MonthlyHeuristicsExtractor extractor = ConstructForFilePath(fileEvent201412); var result = extractor.ExtractDayToPositionMap(); AssertData(result, 14, 0, 18); AssertData(result, 15, 830, int.MaxValue); } }
public void ExtractFromFileWithBadStamps_ShouldNotAffectAllResults() { MonthlyHeuristicsExtractor extractor = ConstructForFilePath(fileWithBadStamp); var result = extractor.ExtractDayToPositionMap(); AssertData(result, 17, 0); AssertData(result, 18, 22); AssertData(result, 19, 12); AssertData(result, 20, 9); AssertData(result, 21, 7); AssertData(result, 22, 3); AssertData(result, 23, 9); AssertData(result, 24, 11); AssertData(result, 25, 4); AssertData(result, 26, 2); AssertData(result, 27, 1); AssertData(result, 28, 0); }
public void ExtractDataToPositionMap_DailyFile_ShouldThrow() { MonthlyHeuristicsExtractor extractor = ConstructForFilePath(dailyLogFile); Assert.Throws <WurmApiException>(() => extractor.ExtractDayToPositionMap()); }
public void ExtractDataToPositionMap_UnrecognizedFileName_ShouldThrow() { MonthlyHeuristicsExtractor extractor = ConstructForFilePath(unrecognizedTestFile); Assert.Throws <WurmApiException>(() => extractor.ExtractDayToPositionMap()); }
public void ExtractDataToPositionMap_InvalidFile_ShouldThrow() { MonthlyHeuristicsExtractor extractor = ConstructForFilePath(invalidTestFile); Assert.Catch <Exception>(() => extractor.ExtractDayToPositionMap()); }