コード例 #1
0
        public async Task <IActionResult> CreateIssue(NewIssueDto newIssueDto)
        {
            var user = await _userService.GetByIdAsync(newIssueDto.AssignedUserId);

            if (user == null)
            {
                return(BadRequest("Assigned user not found"));
            }

            var issue = _mapper.Map <Issue>(newIssueDto);

            issue.Status   = Status.New;
            issue.Assigned = user;
            // TODO: getting of current user
            issue.Reporter = new User
            {
                Id = (int)FakeUserId.TomasLight,
            };

            await _issueService.AddAsync(issue);

            var dto = _mapper.Map <IssueDto>(issue);

            return(Ok(dto));
        }
コード例 #2
0
        public async Task <bool> AddNewIssue(NewIssueDto newIssue)
        {
            var issueToAdd = unitOfWork.Mapper().Map <Issue>(newIssue);

            issueToAdd.Status   = Status.New;
            issueToAdd.Priority = Priority.Medium;
            issueToAdd.Title    = issueToAdd.Title.ToLower();

            unitOfWork.Repository <Issue>().Add(issueToAdd);

            return(await unitOfWork.SaveAllAsync());
        }
コード例 #3
0
        public async Task AddNewIssueModelStateIsNotValid()
        {
            //Arrange
            var newIssue = new NewIssueDto();

            var controller = new IssueController(issueService.Object);

            //Act
            var action = await controller.AddNewIssue(newIssue) as BadRequestObjectResult;

            //Arrange
            Assert.Equal(400, action.StatusCode);
            Assert.NotNull(action.Value);
        }
コード例 #4
0
        public async Task <IActionResult> AddNewIssue(NewIssueDto newIssue)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest("Model state is not valid."));
            }

            if (await issueService.AddNewIssue(newIssue))
            {
                return(Ok());
            }

            return(BadRequest("Something goes wrong."));
        }
コード例 #5
0
        public async Task AddNewIssueOkResponse()
        {
            //Arrange
            var newIssue = new NewIssueDto {
                DeclarantId = "1", Description = "test", Title = "test"
            };

            issueService.Setup(x => x.AddNewIssue(newIssue)).Returns(Task.FromResult(true));

            var controller = new IssueController(issueService.Object);

            //Act
            var action = await controller.AddNewIssue(newIssue) as OkResult;

            //Arrange
            Assert.Equal(200, action.StatusCode);
        }