private void OnGenCPPTestCode() { if (!ConfirmSaveFeatureFile()) { return; } try { GherkinSimpleParser parser = new GherkinSimpleParser(MainTextEditor.Document); parser.AppendMissingScenarioGUID(); string feature_text = MainTextEditor.Document.Text; using (TextReader reader = new StringReader(feature_text)) { CucumberCpp.BDDCucumber.GeneratedFiles generated_file_names = GenerateCPPTestCode(reader); var message = BuildCPPTestCodeResultMessage(ref generated_file_names); WorkAreaEditor.ShowMessageOfGenCPPTestCode(message); ShowWorkArea = true; WorkAreaEditor.ShowCPPCodeGenResultUsagePopup = true; m_MultiFilesOpener.OpenFileByReloading(generated_file_names.StepImplFilePath); } } catch (Exception ex) { DisplayErrorMessage(ex.Message, ex.StackTrace); } }
private void DisplayErrorMessage(string errorMsg, string stackTrace) { StringBuilder stringBuilder = new StringBuilder(); stringBuilder .AppendLine(Properties.Resources.Message_HasErrorInCodeGeneration) .AppendLine(errorMsg); if (Util.ConfigReader.GetValue("showExceptionTrace", false)) { stringBuilder.AppendLine(stackTrace); } WorkAreaEditor.ShowMessageOfGenCPPTestCode(stringBuilder.ToString()); ShowWorkArea = true; MoveCursorToErrorLine(errorMsg); }