public void Write_SimpleScenario_WritesAllValues() { // Arrange var i = new Injector(); var s = i.GetSimpleScenario(); Directory.CreateDirectory(scenDirPath); var field = new ScenarioFile(); var dairy = new ScenarioFile(); var scenDefaults = new ScenarioDefaults(); var grabber = new WeatherGrabber(@"Assets\Database\Weather"); var sut = new ScenarioWriter(dairy, field, scenDefaults, grabber); // Act sut.Write(s, scenDirPath); // Assert bool filesMatch = checkFilesMatch( Path.Combine(scenDirPath, ".NIFA_dairy_scenario").ToString(), @"Assets\simpleScenario.NIFA_dairy_scenario"); Assert.IsTrue(filesMatch); }
public MainWindow ResolveMainWindow(string[] args) { MainWindow client = new MainWindow(); ScenarioFile dairyScenario = new ScenarioFile(); ScenarioFile fieldScenario = new ScenarioFile(); ScenarioDefaults defaults = new ScenarioDefaults(); //string pathToWeatherDatabase = Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, "Assets", "Database", "Weather"); string pathToWeatherDatabase = Path.Combine( Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData), "DairyCropSyst", "Database", "Weather"); WeatherGrabber grabber = new WeatherGrabber(pathToWeatherDatabase); ScenarioReader reader = new ScenarioReader(dairyScenario, fieldScenario); ScenarioWriter writer = new ScenarioWriter(dairyScenario, fieldScenario, defaults, grabber); ScenarioViewModel context = new ScenarioViewModel(reader, writer); client.DataContext = context; if (args.Length == 1) { tryOpenFile(args[0], context); } return(client); }
public void ReadComplexEditWriteSimple() { // Arrange ScenarioFile dairy = new ScenarioFile(); ScenarioFile field = new ScenarioFile(); ScenarioDefaults d = new ScenarioDefaults(); WeatherGrabber g = new WeatherGrabber(@"Assets\Database\Weather"); string readPath = @"Assets\complexScenario.NIFA_dairy_scenario"; string writePath = @"Assets\IntegrationTest"; string comparePath = @"Assets\simpleScenario.NIFA_dairy_scenario"; ScenarioReader r = new ScenarioReader(dairy, field); ScenarioWriter w = new ScenarioWriter(dairy, field, d, g); Directory.CreateDirectory(writePath); // Act r.Load(readPath); Scenario scenario = r.Parse(); scenario.Description = ""; scenario.Cow.BodyMass_kg = 635; scenario.Cow.DryMatterIntake_kg_d = 24; scenario.Cow.MilkProduction_kg_d = 34; scenario.Cow.CrudeProteinDiet_percent = 17.6; scenario.Cow.StarchDiet_percent = 12.83; scenario.Cow.AcidDetergentFiberDiet_percent = 26.08; scenario.Barn.ManureAlleyArea_m2 = 3000; scenario.Barn.NumberCows_cnt = 1000; scenario.Lagoon.SurfaceArea_m2 = 142250; scenario.Lagoon.VolumeMax_m3 = 519213; scenario.Fertigation.Enabled = false; scenario.Field.Id = "field"; scenario.AnaerobicDigester.Enabled = false; scenario.FineSeparator.Enabled = false; scenario.NutrientRecovery.Enabled = false; scenario.ReceiveOffFarmBiomass.Enabled = false; w.Write(scenario, writePath); // Assert Assert.IsTrue( checkFilesMatch( comparePath, Path.Combine(writePath, ".NIFA_dairy_scenario"))); }
public void SetupDir_EmptyValidPath_CreatesDirs() { // Arrange var field = new ScenarioFileStub(); var dairy = new ScenarioFileStub(); var grabber = new WeatherGrabber(@"Assets\Database\Weather"); var scenDefaults = new ScenarioDefaults(); Directory.CreateDirectory(scenDirPath); var sut = new ScenarioWriter(field, dairy, scenDefaults, grabber); // Act sut.SetupDir(scenDirPath); // Assert var outputExists = Directory.Exists(Path.Combine(scenDirPath, "Output")); var fieldsExists = Directory.Exists(Path.Combine(scenDirPath, "Fields")); Assert.IsTrue(outputExists); Assert.IsTrue(fieldsExists); }