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 ESDATModeTest()
        {
            var esdatModel = new ESDATModel(new DateTime(2014, 1, 1),
                                            1,
                                            "lab name",
                                            "lab signatory",
                                            new List<string>() { "associate file" },
                                            new List<string>() { "copy sent to" },
                                            2,
                                            3,
                                            4,
                                            5,
                                            (decimal)6.0,                                            
                                            new List<SampleFileData>(),
                                            new List<ChemistryFileData>());

            Assert.NotNull(esdatModel);
            Assert.AreEqual(new DateTime(2014, 1, 1), esdatModel.DateReported);
            Assert.AreEqual(1, esdatModel.ProjectId);
            Assert.AreEqual("lab name", esdatModel.LabName);
            Assert.AreEqual("lab signatory", esdatModel.LabSignatory);
            Assert.AreEqual("associate file", esdatModel.AssociatedFiles[0]);
            Assert.AreEqual("copy sent to", esdatModel.CopiesSentTo[0]);
            Assert.AreEqual(2, esdatModel.SDGID);
            Assert.AreEqual(3, esdatModel.COCNumber);
            Assert.AreEqual(4, esdatModel.LabRequestId);
            Assert.AreEqual(5, esdatModel.LabRequestNumber);
            Assert.AreEqual(6.0, esdatModel.LabRequestVersion);
            Assert.AreEqual(0, esdatModel.SampleFileData.Count());
            Assert.AreEqual(0, esdatModel.ChemistryData.Count());
        }