/// <summary> /// Gets the defect from commit message. /// </summary> /// <param name="commitMessage">The commit message.</param> /// <returns></returns> public Defect GetDefectFromCommitMessage(string commitMessage) { string [] splitArray = { "feature/", "bugfix/"}; var messageToMatch = commitMessage.ToLower(); if (commitMessage.Contains("feature/") || commitMessage.Contains("bugfix/")) { messageToMatch = commitMessage.Split(splitArray, StringSplitOptions.RemoveEmptyEntries)[1]; } foreach (Match item in Regex.Matches(messageToMatch, "\\d+")) { var defect = new Defect(); defect.Id = item.Value; try { var defectintt = this.testTrackIntegration.GetDefect(long.Parse(defect.Id)); if (defectintt != null) { defect.Status = defectintt.Status.ToString(); defect.Summary = defectintt.Summary; } } catch (Exception ex) { Debug.WriteLine(ex); } return defect; } return null; }
/// <summary> /// Gets the defect. /// </summary> /// <param name="id">The identifier.</param> /// <returns></returns> public Defect GetDefect(string id) { var defect = new Defect(); defect.Id = id; try { var defectintt = this.testTrackIntegration.GetDefect(long.Parse(defect.Id)); if (defectintt != null) { defect.Status = defectintt.Status.ToString(); defect.Summary = defectintt.Summary; } } catch (Exception ex) { Debug.WriteLine(ex); } return defect; }