public JiraClientTests() { _jiraClientWrapperMock = new Mock <IJiraClientWrapper>(); _issueServiceMock = new Mock <IIssueService>(); _classThatWeActuallyTesting = new JiraClient(_jiraClientWrapperMock.Object); var client = CreateRestClient("https://your_jira_address/"); var fields = new CreateIssueFields(ProjectNames[0]); _myIssue = new Issue(client, fields); }
public static async Task CreateJiraIssue(CreateIssueSettings settings, ICakeLog logger) { try { logger.Information($"Creating jira issue '{settings.Summary}' on {settings.Project}"); var jira = CreateJira(settings); var issueSettings = new CreateIssueFields(settings.Project); var issue = new Issue(jira, issueSettings) { Reporter = settings.Reporter, Summary = settings.Summary, Description = settings.Description, Environment = settings.Environment, Assignee = settings.Assignee, DueDate = settings.DueDate }; if (settings.Priority != 0) { issue.Priority = new IssuePriority(settings.Priority.ToString(CultureInfo.InvariantCulture)); } if (settings.Type != 0) { issue.Type = new IssueType(settings.Type.ToString(CultureInfo.InvariantCulture)); } if (settings.Labels != null) { issue.Labels.AddRange(settings.Labels); } var createdIssueKey = await issue.Jira.Issues.CreateIssueAsync(issue); if (!string.IsNullOrEmpty(createdIssueKey)) { logger.Information($"Jira issue '{settings.Summary}' created with key: " + createdIssueKey); } else { logger.Information($"Unable to create jira issue '{settings.Summary}'"); } } catch (Exception ex) { logger.Error($"Error creating issue '{settings.Summary}': {ex.Message}"); } }
public async Task CreateIssueWithOriginalEstimate() { var fields = new CreateIssueFields("TST") { TimeTrackingData = new IssueTimeTrackingData("1d") }; var issue = new Issue(_jira, fields) { Type = "1", Summary = "Test Summary " + _random.Next(int.MaxValue), Assignee = "admin" }; var newIssue = await issue.SaveChangesAsync(); Assert.Equal("1d", newIssue.TimeTrackingData.OriginalEstimate); }
/// <summary> /// Создает задачу в JIRA. /// </summary> /// <param name="project">Проект.</param> /// <param name="subject">Тема.</param> /// <param name="content">Контент.</param> /// <param name="issue_type">Тип.</param> /// <param name="author">Автор.</param> /// <param name="fix_version">Версия.</param> /// <param name="wf_producer">Автор специальное поле.</param> /// <param name="wf_executor">Исполнитель специальное поле.</param> /// <param name="label">Тэг.</param> /// <returns>Задача JIRA.</returns> public Issue CreateIssue(string project, string subject, string content, string issue_type, string author, IEnumerable <ProjectVersion> fix_version, string wf_producer, string wf_executor, string label) { var fields = new CreateIssueFields(project); var result = _client.CreateIssue(fields); result.Summary = subject; result.Description = content; result.Type = new IssueType(issue_type); result.Reporter = author; foreach (var v in fix_version) { result.FixVersions.Add(v); } result.CustomFields.AddById(CUSTOM_FIELD__BUSINESS_PROCESS_EXECUTOR, wf_executor); result.CustomFields.AddById(CUSTOM_FIELD__BUSINESS_PROCESS_PRODUCER, wf_producer); result.Labels.Add(label); result.SaveChanges(); return(result); }