public void ExtractESDATDataFromNoHeaderFileTest() { var mockDefaultValueProvider = new Mock<IWQDefaultValueProvider>(); mockDefaultValueProvider.Setup(x => x.OrganizationNameSampleCollection).Returns("Default organization name from provider"); var chemistryFileToImport = CreateCSVDataToImport(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "DataFiles", "ChemistryFileExample.csv")); var sampleFileToImport = CreateCSVDataToImport(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "DataFiles", "SampleFileExample.csv")); var testESDATDataToImport = new ESDATDataToImport(null, sampleFileToImport, chemistryFileToImport); var simpleValueAssginer = new SimpleValueAssigner(); var sampleDataImporter = ESDATTestHelper.BuildSampleDataFileImporter(); var sampleFileChildObjectExtractConfiguration = new SampleFileChildObjectExtractConfiguration(sampleDataImporter, "SampleFileData", simpleValueAssginer); var chemistryDataImporter = ESDATTestHelper.BuildChemistryFileImporter(); var chemistryFileChildObjectExtractConfiguration = new ChemistryFileChildObjectExtractConfiguration(chemistryDataImporter, "ChemistryData", simpleValueAssginer); var testESDATDataImporter = new ESDATDataImporter(ResultLevel.ERROR, mockDefaultValueProvider.Object); AddXMLExtractConfigurationsToImporter(testESDATDataImporter); testESDATDataImporter.AddExtractConfiguration(sampleFileChildObjectExtractConfiguration); testESDATDataImporter.AddExtractConfiguration(chemistryFileChildObjectExtractConfiguration); var extractResult = testESDATDataImporter.Extract<ESDATModel>(testESDATDataToImport); Assert.NotNull(extractResult); var entity = extractResult.ExtractedEntities.Cast<ESDATModel>().SingleOrDefault(); Assert.NotNull(entity); Assert.AreEqual("Default organization name from provider", entity.LabName); Assert.AreEqual(3, entity.SampleFileData.Count()); Assert.AreEqual(9, entity.ChemistryData.Count()); }
public void AssignFailTest(string propertyName, object valueToAssign, Type type) { var testModel = new SimpleValueAssignerRootClass { Child = new SimpleValueAssignerChildClass() }; var simpleAssigner = new SimpleValueAssigner(); simpleAssigner.AssignValue(testModel, propertyName, valueToAssign, type); }
public static IDataImporter BuildESDATDataImporter(IWQDefaultValueProvider wqDefaultValueProvider) { var simpleValueAssginer = new SimpleValueAssigner(); var sampleDataImporter = BuildSampleDataFileImporter(); var sampleFileChildObjectExtractConfiguration = new SampleFileChildObjectExtractConfiguration(sampleDataImporter, "SampleFileData", simpleValueAssginer); var chemistryDataImporter = BuildChemistryFileImporter(); var chemistryFileChildObjectExtractConfiguration = new ChemistryFileChildObjectExtractConfiguration(chemistryDataImporter, "ChemistryData", simpleValueAssginer); var ESDATDataImporter = new ESDATDataImporter(ResultLevel.ERROR, wqDefaultValueProvider); AddXMLExtractConfigurationsToImporter(ESDATDataImporter); ESDATDataImporter.AddExtractConfiguration(sampleFileChildObjectExtractConfiguration); ESDATDataImporter.AddExtractConfiguration(chemistryFileChildObjectExtractConfiguration); return ESDATDataImporter; }
public void AssignSuccessTest() { var testModel = new SimpleValueAssignerRootClass { Child = new SimpleValueAssignerChildClass() }; var simpleAssigner = new SimpleValueAssigner(); simpleAssigner.AssignValue(testModel, "RootName", "test root name", typeof(string)); simpleAssigner.AssignValue(testModel, "RootValue", 123, typeof(int)); simpleAssigner.AssignValue(testModel, "Child.ChildName", "test child name", typeof(string)); simpleAssigner.AssignValue(testModel, "Child.ChildValue", 321, typeof(int)); Assert.AreEqual("test root name", testModel.RootName); Assert.AreEqual(123, testModel.RootValue); Assert.AreEqual("test child name", testModel.Child.ChildName); Assert.AreEqual(321, testModel.Child.ChildValue); }
public void ChemistryFilePropertyTest() { var path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "DataFiles", "ChemistryFileExample.csv"); var dataSource = new WindowsFileSystem(path); var dataFromFileSystem = dataSource.FetchData(); var dataToImport = new CSVDataToImport(dataFromFileSystem); var simpleValueAssginer = new SimpleValueAssigner(); var chemistryImporter = ESDATTestHelper.BuildChemistryFileImporter(); var childObjectExtractConfiguration = new ChemistryFileChildObjectExtractConfiguration(chemistryImporter, "ChemistryData", simpleValueAssginer); Assert.AreEqual(typeof(ChemistryFileData), childObjectExtractConfiguration.ChildObjectType); var testESDATModel = new ESDATModel(); var extractResult = childObjectExtractConfiguration.ExtractData(testESDATModel, dataToImport); Assert.NotNull(extractResult); Assert.AreEqual(9, testESDATModel.ChemistryData.Count()); }
public void ChemistryFilePropertyTest() { var path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "DataFiles", "SampleFileExample.csv"); var dataSource = new WindowsFileSystem(path); var dataFromFileSystem = dataSource.FetchData(); var dataToImport = new CSVDataToImport(dataFromFileSystem); var simpleValueAssginer = new SimpleValueAssigner(); var sampleDataImporter = ESDATTestHelper.BuildSampleDataFileImporter(); var childObjectExtractConfiguration = new SampleFileChildObjectExtractConfiguration(sampleDataImporter, "SampleFileData", simpleValueAssginer); Assert.AreEqual(typeof(SampleFileData), childObjectExtractConfiguration.ChildObjectType); var testESDATModel = new ESDATModel(); var extractResult = childObjectExtractConfiguration.ExtractData(testESDATModel, dataToImport); Assert.NotNull(extractResult); Assert.AreEqual(3, testESDATModel.SampleFileData.Count()); var firstSampleData = testESDATModel.SampleFileData.FirstOrDefault(); Assert.NotNull(firstSampleData); Assert.AreEqual("5828314", firstSampleData.SampleCode); Assert.AreEqual(new DateTime(2014, 9, 16), firstSampleData.SampledDateTime); Assert.AreEqual("FRL-1 @ 16:00", firstSampleData.FieldID); Assert.Null(firstSampleData.SampleDepth); Assert.AreEqual("Water", firstSampleData.MatrixType); Assert.AreEqual("Normal", firstSampleData.SampleType); Assert.AreEqual(string.Empty, firstSampleData.ParentSample); Assert.AreEqual("14J891101", firstSampleData.SDG); Assert.AreEqual("AGAT", firstSampleData.LabName); Assert.AreEqual("5828314", firstSampleData.LabSampleID); Assert.AreEqual(string.Empty, firstSampleData.Comments); Assert.AreEqual("14J891101", firstSampleData.LabReportNumber); }
public void AssignToNullValueTest() { var simpleAssigner = new SimpleValueAssigner(); simpleAssigner.AssignValue(null, "RootName", "test", typeof(string)); }
public static IExtractConfiguration CreateSampleFileDataExtractConfiguration() { var path = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "DataFiles", "SampleFileExample.csv"); var dataSource = new WindowsFileSystem(path); var dataFromFileSystem = dataSource.FetchData(); var dataToImport = new CSVDataToImport(dataFromFileSystem); var simpleValueAssginer = new SimpleValueAssigner(); var sampleDataImporter = ESDATTestHelper.BuildSampleDataFileImporter(); var childObjectExtractConfiguration = new SampleFileChildObjectExtractConfiguration(sampleDataImporter, "SampleFileData", simpleValueAssginer); return childObjectExtractConfiguration; }
public static IDataImporter BuildChemistryFileImporter() { var simpleValueAssigner = new SimpleValueAssigner(); var parserFactory = new DefaultCSVParserFactory(); var testImporter = new SimpleCSVDataImporter(ResultLevel.ERROR, 1); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(0, "SampleCode", parserFactory.GetCellParser(typeof(string)), simpleValueAssigner, typeof(string))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(1, "ChemCode", parserFactory.GetCellParser(typeof(string)), simpleValueAssigner, typeof(string))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(2, "OriginalChemName", parserFactory.GetCellParser(typeof(string)), simpleValueAssigner, typeof(string))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(3, "Prefix", parserFactory.GetCellParser(typeof(string)), simpleValueAssigner, typeof(string))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(4, "Result", parserFactory.GetCellParser(typeof(double?)), simpleValueAssigner, typeof(double?))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(5, "ResultUnit", parserFactory.GetCellParser(typeof(string)), simpleValueAssigner, typeof(string))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(6, "TotalOrFiltered", parserFactory.GetCellParser(typeof(string)), simpleValueAssigner, typeof(string))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(7, "ResultType", parserFactory.GetCellParser(typeof(string)), simpleValueAssigner, typeof(string))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(8, "MethodType", parserFactory.GetCellParser(typeof(string)), simpleValueAssigner, typeof(string))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(9, "MethodName", parserFactory.GetCellParser(typeof(string)), simpleValueAssigner, typeof(string))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(10, "ExtractionDate", parserFactory.GetCellParser(typeof(DateTime?)), simpleValueAssigner, typeof(DateTime?))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(11, "AnalysedDate", parserFactory.GetCellParser(typeof(DateTime?)), simpleValueAssigner, typeof(DateTime?))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(12, "EQL", parserFactory.GetCellParser(typeof(double?)), simpleValueAssigner, typeof(double?))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(13, "EQLUnits", parserFactory.GetCellParser(typeof(string)), simpleValueAssigner, typeof(string))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(14, "Comments", parserFactory.GetCellParser(typeof(string)), simpleValueAssigner, typeof(string))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(16, "UCL", parserFactory.GetCellParser(typeof(double?)), simpleValueAssigner, typeof(double?))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(17, "LCL", parserFactory.GetCellParser(typeof(double?)), simpleValueAssigner, typeof(double?))); return testImporter; }
public static IDataImporter BuildSampleDataFileImporter() { var simpleValueAssigner = new SimpleValueAssigner(); var parserFactory = new DefaultCSVParserFactory(); var testImporter = new SimpleCSVDataImporter(ResultLevel.ERROR, 1); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(0, "SampleCode", parserFactory.GetCellParser(typeof(string)), simpleValueAssigner, typeof(string))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(1, "SampledDateTime", parserFactory.GetCellParser(typeof(DateTime?)), simpleValueAssigner, typeof(DateTime?))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(2, "FieldID", parserFactory.GetCellParser(typeof(string)), simpleValueAssigner, typeof(string))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(4, "SampleDepth", parserFactory.GetCellParser(typeof(double?)), simpleValueAssigner, typeof(double?))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(6, "MatrixType", parserFactory.GetCellParser(typeof(string)), simpleValueAssigner, typeof(string))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(7, "SampleType", parserFactory.GetCellParser(typeof(string)), simpleValueAssigner, typeof(string))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(8, "ParentSample", parserFactory.GetCellParser(typeof(string)), simpleValueAssigner, typeof(string))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(10, "SDG", parserFactory.GetCellParser(typeof(string)), simpleValueAssigner, typeof(string))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(11, "LabName", parserFactory.GetCellParser(typeof(string)), simpleValueAssigner, typeof(string))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(12, "LabSampleID", parserFactory.GetCellParser(typeof(string)), simpleValueAssigner, typeof(string))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(13, "Comments", parserFactory.GetCellParser(typeof(string)), simpleValueAssigner, typeof(string))); testImporter.AddExtractConfiguration(new SimpleCSVExtractConfiguration(14, "LabReportNumber", parserFactory.GetCellParser(typeof(string)), simpleValueAssigner, typeof(string))); return testImporter; }
private ESDATModel extractEsdatModel() { var mockDefaultValueProvider = new Mock<IWQDefaultValueProvider>(); var headerFileToImport = ESDATTestHelper.CreateXMLDatoToImport(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "DataFiles", "XMLSample.xml")); var chemistryFileToImport = ESDATTestHelper.CreateCSVDataToImport(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "DataFiles", "ChemistryFileExample.csv")); var sampleFileToImport = ESDATTestHelper.CreateCSVDataToImport(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "DataFiles", "SampleFileExample.csv")); var testESDATDataToImport = new ESDATDataToImport(headerFileToImport, sampleFileToImport, chemistryFileToImport); var simpleValueAssginer = new SimpleValueAssigner(); var sampleDataImporter = ESDATTestHelper.BuildSampleDataFileImporter(); var sampleFileChildObjectExtractConfiguration = new SampleFileChildObjectExtractConfiguration(sampleDataImporter, "SampleFileData", simpleValueAssginer); var chemistryDataImporter = ESDATTestHelper.BuildChemistryFileImporter(); var chemistryFileChildObjectExtractConfiguration = new ChemistryFileChildObjectExtractConfiguration(chemistryDataImporter, "ChemistryData", simpleValueAssginer); var testESDATDataImporter = new ESDATDataImporter(ResultLevel.ERROR, mockDefaultValueProvider.Object); ESDATTestHelper.AddXMLExtractConfigurationsToImporter(testESDATDataImporter); testESDATDataImporter.AddExtractConfiguration(sampleFileChildObjectExtractConfiguration); testESDATDataImporter.AddExtractConfiguration(chemistryFileChildObjectExtractConfiguration); var extractResult = testESDATDataImporter.Extract<ESDATModel>(testESDATDataToImport); return extractResult.ExtractedEntities.First(); }