Ejemplo n.º 1
0
        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());
        }
Ejemplo n.º 2
0
        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());
        }
Ejemplo n.º 3
0
        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);
        }
Ejemplo n.º 4
0
        private 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);
        }
Ejemplo n.º 5
0
        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);
        }
Ejemplo n.º 6
0
        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);
        }
Ejemplo n.º 7
0
        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);
        }
Ejemplo n.º 9
0
        private 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);
        }
Ejemplo n.º 11
0
        public void AssignToNullValueTest()
        {
            var simpleAssigner = new SimpleValueAssigner();

            simpleAssigner.AssignValue(null, "RootName", "test", typeof(string));
        }