public static void ImportHouseholdDefinition([NotNull] HouseholdDefinitionImporterOptions o, [NotNull] string connectionString) { var sim = new Simulator(connectionString); try { var sett = ModularHouseholdSerializer.ImportFromCSV(o.File, sim); SimIntegrityChecker.Run(sim); var bo = new BatchOptions { OutputFileDefault = OutputFileDefault.ReasonableWithCharts, EnergyIntensity = EnergyIntensityType.EnergySavingPreferMeasured }; var count = 1; foreach (var settlement in sett) { bo.Suffix = "CSV" + count++; bo.SettlementName = settlement.Name; BatchfileFromSettlement.MakeBatchfileFromSettlement(sim, bo); } } catch (Exception ex) { Logger.Exception(ex); if (!Config.CatchErrors) { throw; } } }
public void Run() { Logger.Info("Starting test"); using (var db = new DatabaseSetup(Utili.GetCurrentMethodAndClass())) { using (var wd = new WorkingDir(Utili.GetCurrentMethodAndClass())) { Directory.SetCurrentDirectory(wd.WorkingDirectory); var sim = new Simulator(db.ConnectionString) { MyGeneralConfig = { PerformCleanUpChecks = "true" } }; Logger.Info("First hh"); for (var i = 0; i < sim.ModularHouseholds.It.Count && i < 5; i++) { var mhh = sim.ModularHouseholds[i]; Logger.Info("exporting and importing " + mhh.Name); var start = DateTime.Now; if (mhh.CreationType != CreationType.ManuallyCreated) { continue; } var filename = Path.Combine(wd.WorkingDirectory, "testexport." + i + ".csv"); ModularHouseholdSerializer.ExportAsCSV(mhh, sim, filename); ModularHouseholdSerializer.ImportFromCSV(filename, sim); var import = DateTime.Now; SimIntegrityChecker.Run(sim); var durationTotal = DateTime.Now - start; var durationIntegrityCheck = DateTime.Now - import; Logger.Info("Duration: total " + durationTotal.TotalSeconds + " seconds, integrity check: " + durationIntegrityCheck.TotalSeconds); } Logger.Info("finished"); Directory.SetCurrentDirectory(wd.PreviousCurrentDir); db.Cleanup(); wd.CleanUp(1); } } }