public async Task DeleteIssue_IssueExists_Returns_OkResult()
        {
            _issueService.Setup(s => s.Remove((It.IsAny <int>()))).ReturnsAsync(true);

            var result = await _issueController.DeleteIssue(It.IsAny <int>());

            result.Should().BeOfType <OkResult>();
        }
        public void Delete_ExistingIdPassed_RemovesItem()
        {
            // Act
            _ = controller.DeleteIssue("0");

            // Assert
            var issues = controller.GetIssues().Result;
            var items  = Assert.IsType <List <ClientIssue> >(issues.Value);

            Assert.Single(items);
        }
        public async Task DeleteIssueOkResponse()
        {
            //Arrange
            int issueId = 1;

            issueService.Setup(x => x.DeleteIssue(issueId)).Returns(Task.FromResult(true));

            var controller = new IssueController(issueService.Object);

            //Act
            var action = await controller.DeleteIssue(issueId) as OkResult;

            //Assert
            Assert.Equal(200, action.StatusCode);
        }
        public async Task DeleteIssueBadRequestResponse()
        {
            //Arrange
            int issueId = 1;

            issueService.Setup(x => x.DeleteIssue(issueId)).Returns(Task.FromResult(false));

            var controller = new IssueController(issueService.Object);

            //Act
            var action = await controller.DeleteIssue(issueId) as BadRequestObjectResult;

            //Assert
            Assert.Equal(400, action.StatusCode);
            Assert.NotNull(action.Value);
        }