public void GetMeasurements_WhenGivenRealDataDirectory_ReturnsExpectedMeasurements() { // Arrange var sut = new FilesystemEventDataFetcher(); var events = sut.FetchEvents(@"..\..\TestData\archive") .ToList(); var odd = events.Single(e => e.Opponent == "Odd"); // Act var res = sut.GetMeasurements(odd) .ToList(); // Assert res.Count.Should().Be(3, "there are three measurements in this directory"); res.All(m => m.EventId == 438523).Should().BeTrue("all measurements should return the same event id"); res.All(m => m.MeasurementTime.Year == 2015 && m.MeasurementTime.Month == 6 && m.MeasurementTime.Day == 30) .Should() .BeTrue("all measurements should have the same date"); res.Count(m => m.MeasurementTime.Hour == 12 && m.MeasurementTime.Minute == 12) .Should() .Be(1, "only one of the measurements should match"); res.Count(m => m.MeasurementTime.Hour == 12 && m.MeasurementTime.Minute == 42) .Should() .Be(1, "only one of the measurements should match"); res.Count(m => m.MeasurementTime.Hour == 13 && m.MeasurementTime.Minute == 12) .Should() .Be(1, "only one of the measurements should match"); }
static void Main(string[] args) { // Ikke akkurat dependency injection using (var context = new TellerContext()) { var eventRepo = new EventRepository(context); var measurementRepo = new MeasurementRepository(context); var eventFetcher = new FilesystemEventDataFetcher(); var measurementReader = new MeasurementReader(); var fileArchiver = new FileArchiver(); var ingestor = new MeasurementIngestor(eventRepo, measurementRepo, eventFetcher, measurementReader, fileArchiver); ingestor.ReadAndIngestData(); } using (var context = new TellerContext()) { var eventRepo = new EventRepository(context); var allEvents = eventRepo.GetAll() .ToList(); var test = new RenderTest(); foreach (var bsEvent in allEvents) { test.Render(bsEvent); } } }
public void FetchEvents_WhenGivenRealDataDirectory_ReturnsExpectedObjects() { // Arrange var sut = new FilesystemEventDataFetcher(); // Act var res = sut.FetchEvents(@"..\..\TestData\archive") .ToList(); // Assert res.Count.Should().Be(3, "we have three directories with eventinfo.properties files"); }
public void GetMeasurements_WhenGivenRealDataDirectory_ReturnsExpectedMeasurements() { // Arrange var sut = new FilesystemEventDataFetcher(); var events = sut.FetchEvents(@"..\..\TestData\storage\2015") .ToList(); var vikingur = events.Single(e => e.Opponent == "Vikingur"); // Act var res = sut.GetMeasurements(vikingur) .ToList(); // Assert res.Count.Should().Be(3, "there are 3 measurements in this directory"); res.All(m => m.EventId == 467263).Should().BeTrue("all measurements should return the same event id"); }
static void Main(string[] args) { var sw = new Stopwatch(); sw.Start(); SetupTraceListeners(); List <BillettServiceEvent> updatedEvents; // Ikke akkurat dependency injection using (var context = new TellerContext()) { var eventRepo = new EventRepository(context); var measurementRepo = new MeasurementRepository(context); var eventFetcher = new FilesystemEventDataFetcher(); var measurementReader = new MeasurementReader(); var fileArchiver = new FileArchiver(); var ingestor = new MeasurementIngestor(eventRepo, measurementRepo, eventFetcher, measurementReader, fileArchiver); updatedEvents = ingestor.ReadAndIngestData().ToList(); } Trace.TraceInformation("{0} events updated: {1}", updatedEvents.Count, String.Join(", ", updatedEvents.Select(e => e.EventNumber))); using (var context = new TellerContext()) { var eventRepo = new EventRepository(context); var allEvents = eventRepo.GetAll() //.Where(e => updatedEvents.Any(ue => ue.EventNumber == e.EventNumber)) .ToList(); var missingFileEvents = allEvents.Where( ev => !File.Exists(Path.Combine(StautConfiguration.Current.StaticImageDirectory, ev.EventNumber + ".png"))) .ToList(); var eventsToRender = missingFileEvents.Concat( allEvents.Where( ae => !missingFileEvents.Contains(ae) && updatedEvents.Any(ue => ue.EventNumber == ae.EventNumber))).ToList(); var test = new RenderTest(); foreach (var bsEvent in eventsToRender) { test.Render(bsEvent); } } sw.Stop(); Trace.TraceInformation("Ingest process complete, took {0}ms", sw.ElapsedMilliseconds); Trace.Flush(); Trace.Close(); }