public void UpdateIssueQuery(string IssID, UpdateIssue updatedIssue /*IDictionary<string, string> myFilter*/) { //добавить здесь избавление от null foreach (Issue myIss in myIssues.issues) { if (myIss.ID.Equals(IssID)) { if (updatedIssue.assigned_to_id == null) { updatedIssue.assigned_to_id = myIss.Assigned_to.ID; } if (updatedIssue.done_ratio == null) { updatedIssue.done_ratio = myIss.Done_ratio; } if (updatedIssue.priority_id == null) { updatedIssue.priority_id = myIss.Priority.ID; } if (updatedIssue.status_id == null) { updatedIssue.status_id = myIss.Status.ID; } if (updatedIssue.project_id == null) { updatedIssue.project_id = myIss.Project.ID; } } } RequestIssues.RunPut(IssID, updatedIssue, myLogin, myPassword); }
public async Task update_issue_command_should_update_issue_with_given_data_to() { var projectId = "projectKey"; var epicId = string.Empty; var issueId = "issueKey"; var sprintId = string.Empty; var title = "Title"; var updatedTitle = "UpdatedTitle"; var description = "description"; var updatedDescription = "updatedDescription"; var type = IssueType.Story; var status = IssueStatus.TODO; var storypoints = 0; var issue = new Issue(issueId, type, status, title, description, storypoints, projectId, epicId, sprintId, null, null, DateTime.Now); await _issuesMongoDbFixture.InsertAsync(issue.AsDocument()); var command = new UpdateIssue(issueId, type, status, updatedTitle, updatedDescription, storypoints, epicId, null, null); // Check if exception is thrown _commandHandler .Awaiting(c => c.HandleAsync(command)) .Should().NotThrow(); var updatedIssue = await _issuesMongoDbFixture.GetAsync(command.IssueId); updatedIssue.Should().NotBeNull(); updatedIssue.Id.Should().Be(issueId); updatedIssue.Title.Should().Be(updatedTitle); updatedIssue.Description.Should().Be(updatedDescription); }
public async Task IssueCRUDTest() { //Read var initCount = (await GetIssues()).Count; //Create var createCommand = new CreateIssue( IssueType.Task, "Check Create Task", "Task should be created after running command" ); var createdIssue = await CreateIssue(createCommand, initCount); //Update var updateCommand = new UpdateIssue( createdIssue.Id, IssueType.Task, "Check Update Task", "Task should be update after running command" ); await UpdateIssue(updateCommand); //Delete await DeleteIssue(createdIssue.Id); }
protected UpdateStatus Add(string k, string v, UpdateIssue code, UpdateStatus exist) { if (exist == null) { exist = new UpdateStatus(code); } exist.Add(new IssueNotice(k, v)); return(exist); }
public async Task <Unit> Handle(UpdateIssue request, CancellationToken cancellationToken) { var issue = _mapper.Map <Issue>(request); await _repository.UpdateAsync(issue); var @event = _mapper.Map <IssueUpdated>(issue); await _eventBus.Publish(@event); return(Unit.Value); }
public async Task Handle(UpdateIssue command, CancellationToken cancellationToken) { var aggregate = await repository.GetByIdAsync(command.Id, cancellationToken); aggregate.Update(command.Type, command.Title, command.Description); await repository.UpdateAsync(aggregate, cancellationToken); var @event = new IssueUpdated(aggregate.Id, aggregate.Type, aggregate.Title, aggregate.Description); await eventBus.PublishAsync(@event, cancellationToken); }
public async Task CreateIssueWithNotValidData_ShouldReturnBadRequest() { var command = new UpdateIssue( Guid.Empty, IssueType.Task, null, null ); var response = await _sut.Client.PutAsync($"/api/Issues/{command.Id}", command.ToJsonStringContent()); response.StatusCode.Should().Be(HttpStatusCode.BadRequest); }
public static void RunPut(string issueID, UpdateIssue updatedIssue, string Login, string Password) { String encoded = System.Convert.ToBase64String(System.Text.Encoding.GetEncoding("ISO-8859-1").GetBytes(Login + ":" + Password)); HttpClient client = new HttpClient(); //client.DefaultRequestHeaders.Add("X-Redmine-API-Key", ""); client.DefaultRequestHeaders.Add("Authorization", "Basic " + encoded); UriBuilder builder = new UriBuilder("http", "student-rm.exactpro.com", -1, "issues/" + issueID + ".json"); HttpRequestMessage message = new HttpRequestMessage(HttpMethod.Put, builder.Uri); /*message.Content = new StringContent("{\"issue\":{\"status_id\":" + statusID + "}}", * Encoding.UTF8, * "application/json");*/ //message.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); JavaScriptSerializer serializer = new JavaScriptSerializer(); string json = serializer.Serialize(updatedIssue); message.Content = new StringContent("{\"issue\":" + json + "}",//{\"project_id\":12, \"subject\": \"Example\",\"priority_id\": 1, \"tracker_id\": 2}}", Encoding.UTF8, "application/json"); Task <HttpResponseMessage> taskResponse = client.SendAsync(message); taskResponse.Wait(); HttpResponseMessage response = taskResponse.Result; if (response.IsSuccessStatusCode) { Task <Stream> streamTask = response.Content.ReadAsStreamAsync(); streamTask.Wait(); if (streamTask.IsCompleted) { Stream responseStream = streamTask.Result; responseStream.Close(); } } else { Console.WriteLine(" response failed. Response status code: [" + response.StatusCode + "]"); } }
private async Task <IssueView> UpdateIssue(UpdateIssue command) { var response = await _sut.Client.PutAsync($"/api/Issues/{command.Id}", command.ToJsonStringContent()); response.EnsureSuccessStatusCode(); response.StatusCode.Should().Be(HttpStatusCode.OK); var issue = await GetIssue(command.Id); issue.Should().NotBeNull(); issue.Id.Should().Be(command.Id); issue.Type.Should().Be(command.Type); issue.Title.Should().Be(command.Title); issue.Description.Should().Be(command.Description); return(issue); }
public async Task update_issue_command_fails_when_issue_with_key_does_not_exist() { var projectId = "projectKey"; var epicId = "epicKey"; var issueId = "issueKey"; var title = "Title"; var description = "description"; var type = IssueType.Story; var status = IssueStatus.TODO; var storypoints = 0; var command = new UpdateIssue(issueId, type, status, title, description, storypoints, epicId, null, null); // Check if exception is thrown _commandHandler .Awaiting(c => c.HandleAsync(command)) .Should().Throw <IssueNotFoundException>(); }
public async Task update_issue_command_fails_when_epic_does_not_exist() { var projectId = "projectKey"; var epicId = "epicKey"; var issueId = "issueKey"; var sprintId = string.Empty; var title = "Title"; var description = "description"; var type = IssueType.Story; var status = IssueStatus.TODO; var storypoints = 0; var issue = new Issue(issueId, type, status, title, description, storypoints, projectId, string.Empty, sprintId, null, null, DateTime.Now); await _issuesMongoDbFixture.InsertAsync(issue.AsDocument()); var command = new UpdateIssue(issueId, type, status, title, description, storypoints, epicId, null, null); // Check if exception is thrown _commandHandler .Awaiting(c => c.HandleAsync(command)) .Should().Throw <EpicNotFoundException>(); }
public async Task <IActionResult> Put([FromBody] UpdateIssue command) { await commandBus.SendAsync(command); return(Ok()); }
public async Task <ActionResult <OutputIssue> > Put(Guid projectId, Guid issueId, [FromBody] UpdateIssue updateIssue) { try { logger.LogInformation($"Beginning request: /api/projects/{projectId}/issues/{issueId} PUT"); Issue updatedIssue = await issueManager.UpdateIssueAsync(projectId, issueId, updateIssue.EpicId, updateIssue.IssueType, updateIssue.Name, updateIssue.Description, updateIssue.Status, updateIssue.Estimate); OutputIssue output = issueMapper.MapOutputIssue(updatedIssue); logger.LogInformation($"Request complete: /api/projects/{projectId}/issues/{issueId} PUT"); return(Ok(output)); } catch (Exception ex) { return(exceptionManager.Handle(ex)); } }
public UpdateStatus(UpdateIssue issue) { this.Issue = issue; }
private void SendChangeIssueQuery(string issID, UpdateIssue UpIss) { _storage.UpdateIssueQuery(issID, UpIss); }
public IIssueModel Any(UpdateIssue request) { return(workflow.Update(request)); }