public void ExecuteUndiscoveredDepostisToolTest01() { UndiscoveredDepositsInputParams input = new UndiscoveredDepositsInputParams { // depositsCSVPath = "c:\\temp\\mapWizard\\generalCSV_wHeaders.csv" }; UndiscoveredDepositsTool unDiscoveredTool = new UndiscoveredDepositsTool(); var result = unDiscoveredTool.Execute(input); Assert.IsNotNull(result); }
/// <summary> /// Run tool with user input. /// </summary> private async void RunTool() { logger.Info("-->{0}", this.GetType().Name); // 1. Collect input parameters string usedMethod = ""; if (Model.SelectedTabIndex == 1) { usedMethod = "Negative"; } else if (Model.SelectedTabIndex == 2) { usedMethod = "Middle"; } else if (Model.SelectedTabIndex == 3) { usedMethod = "Custom"; } if (Model.NegBinomialUseModelName == false) { Model.NegBinomialExtensionFolder = ""; } if (Model.Mark3UseModelName == false) { Model.Mark3ExtensionFolder = ""; } if (Model.CustomUseModelName == false) { Model.CustomExtensionFolder = ""; } UndiscoveredDepositsInputParams input = new UndiscoveredDepositsInputParams { DepositsNegativeCSV = Model.DepositsCsvString, DepositsCustomCSV = Model.CustomFunctionCsvString, EstRationaleTXT = Model.EstimateRationale, Mark3EstRationaleTXT = Model.MARK3EstimateRationale, CustomEstRationaleTXT = Model.CustomEstimateRationale, N90 = Model.EstN90, N50 = Model.EstN50, N10 = Model.EstN10, N5 = Model.EstN5, N1 = Model.EstN1, Method = usedMethod, TractID = Model.SelectedTract, NegBinomialExtensionFolder = Model.NegBinomialExtensionFolder, Mark3ExtensionFolder = Model.Mark3ExtensionFolder, CustomExtensionFolder = Model.CustomExtensionFolder, LastRunTract = "Tract: " + Model.SelectedTract }; // 2. Execute tool UndiscoveredDepositsResult ddResult = default(UndiscoveredDepositsResult); Model.IsBusy = true; try { await Task.Run(() => { UndiscoveredDepositsTool tool = new UndiscoveredDepositsTool(); ddResult = tool.Execute(input) as UndiscoveredDepositsResult; Result.Summary = ddResult.Summary; Result.PlotImage = ddResult.PlotImage; Result.PlotImageBitMap = BitmapFromUri(Result.PlotImage); }); //TODO: refactor this cleaner var projectFolder = Path.Combine(input.Env.RootPath, "UndiscDep", Model.SelectedTract); DirectoryInfo projectFolderInfo = null; Model.ModelNames.Clear(); var modelFolder = Path.Combine(input.Env.RootPath, "UndiscDep", Model.SelectedTract, "NegativeBinomial", Model.NegBinomialExtensionFolder); if (Directory.Exists(Path.Combine(projectFolder, "NegativeBinomial"))) { if (usedMethod == "Negative") { input.Save(Path.Combine(modelFolder, "undiscovered_deposits_input_params.json")); } projectFolderInfo = new DirectoryInfo(Path.Combine(projectFolder, "NegativeBinomial")); //NegativeBinomial results FindModelnames(projectFolderInfo); } modelFolder = Path.Combine(input.Env.RootPath, "UndiscDep", Model.SelectedTract, "Mark3", Model.Mark3ExtensionFolder); if (Directory.Exists(Path.Combine(projectFolder, "MARK3"))) { if (usedMethod == "Middle") { input.Save(Path.Combine(modelFolder, "undiscovered_deposits_input_params.json")); } projectFolderInfo = new DirectoryInfo(Path.Combine(projectFolder, "MARK3")); //MARK3 results FindModelnames(projectFolderInfo); } modelFolder = Path.Combine(input.Env.RootPath, "UndiscDep", Model.SelectedTract, "Custom", Model.CustomExtensionFolder); if (Directory.Exists(Path.Combine(projectFolder, "Custom"))) { if (usedMethod == "Custom") { input.Save(Path.Combine(modelFolder, "undiscovered_deposits_input_params.json")); } projectFolderInfo = new DirectoryInfo(Path.Combine(projectFolder, "Custom")); //Custom results FindModelnames(projectFolderInfo); } string lastRunFile = Path.Combine(Path.Combine(settingsService.RootPath, "UndiscDep", "undiscovered_deposits_last_run.lastrun")); File.Create(lastRunFile).Close(); input.Save(Path.Combine(settingsService.RootPath, "UndiscDep", "undiscovered_deposits_input_params.json")); dialogService.ShowNotification("UndiscoveredDepositsTool completed successfully", "Success"); viewModelLocator.SettingsViewModel.WriteLogText("UndiscoveredDepositsTool completed successfully", "Success"); Model.LastRunDate = "Last Run: " + DateTime.Now.ToString("g"); Model.LastRunTract = "Tract: " + model.SelectedTract; Model.RunStatus = 1; } catch (Exception ex) { logger.Error(ex, "Failed to execute REngine() script"); dialogService.ShowNotification("Run failed. Check output for details.\r\n- Are all input parameters correct?\r\n- Are all input files valid? \r\n- Are all input and output files closed?", "Error"); viewModelLocator.SettingsViewModel.WriteLogText("Undiscovered Deposits Tool run failed. Check output for details.\r\n- Are all input parameters correct?\r\n- Are all input files valid? \r\n- Are all input and output files closed?", "Error"); Model.RunStatus = 0; } finally { Model.IsBusy = false; } logger.Info("<--{0} completed", this.GetType().Name); }