public void Transform_GenericHasLessPropertiesThanMeasurements_ReturnsOnlyGenericProperties() { // Arrange List <MeasurementV2> measurements = LoggerNetArranger.GetMeasurementV2TwoVariablesMultipleTimesteps(); var sut = new ManualTidyDataTransformer(); // Act TidyData actual = sut.Transform <DataTableOneVar>(measurements); // Assert Assert.Equal(3, actual.Observations.Count); Assert.Equal(2, actual.Metadata.Variables.Count); }
public void Transform_ValidData_ExpectedResults() { // Arrange List <MeasurementV2> measurements = LoggerNetArranger.GetMeasurementV2TwoVariablesMultipleTimesteps(); var sut = new ManualTidyDataTransformer(); // Act TidyData actual = sut.Transform <DataTableTwoVar>(measurements); // Assert List <DataTableTwoVar> actualObs = actual.Observations.Cast <DataTableTwoVar>().ToList(); Assert.Equal(3, actual.Observations.Count); Assert.Equal(3, actual.Metadata.Variables.Count); Assert.NotNull(actualObs.Where(m => m.ParDensityTsAvg == 1806.077).FirstOrDefault()); }
public async void ExtractMeasurementV2FromCosmosTransformToTidyWriteToCsv() { // Arrange string uri = System.Configuration.ConfigurationManager.AppSettings["cosmosUri"]; string key = System.Configuration.ConfigurationManager.AppSettings["cosmosKey"]; string dirPath = @"Output"; string fileName = "test"; var extractor = new CafDbExtractor(uri, key); var transformer = new ManualTidyDataTransformer(); var loader = new TidyDataCsvLoader(); // Act List <MeasurementV2> measurements = await extractor.ExtractMeasurementsV2( "CafMeteorologyEcTower", "CookEast", "ParDensityTsAvg", "2019-12-12", "2019-12-13"); TidyData tidyData = transformer.Transform <ParDataTable>(measurements); loader.LoadToFile(tidyData, dirPath, fileName); // Assert var files = Directory.GetFiles(dirPath, $"{fileName}*"); Assert.Equal(2, files.Length); // Cleanup if (files.Length > 0) { foreach (var file in files) { File.Delete(file); } } }