Esempio n. 1
0
        public async Task ActivityController_PatchActivityStatus_BadRequest()
        {
            // Arrange
            Activity toBeUpdated = new Activity
            {
                Id          = 1,
                Amount      = 10,
                DateTime    = DateTime.Now,
                Description = "Test",
                Status      = "Pending"
            };

            string newStatus = "Completed";

            PatchActivityStatusDto patchDto = null;

            var mockActivityService = new MockActivityService().MockPatchActivityStatus(toBeUpdated, newStatus);
            var controller          = new ActivitiesController(mockActivityService.Object, AutoMapperSingleton.Mapper);

            // Act
            var actionResult = await controller.PatchActivityStatus(1, patchDto);

            //Assert
            Assert.IsType <BadRequestResult>(actionResult);
        }
Esempio n. 2
0
        public async Task ActivityController_PatchActivityStatus_NotFound()
        {
            // Arrange
            Activity toBeUpdated = null;

            string newStatus = "Completed";

            PatchActivityStatusDto patchDto = new PatchActivityStatusDto
            {
                Status = newStatus
            };

            var mockActivityService = new MockActivityService().MockPatchActivityStatus(toBeUpdated, newStatus);
            var controller          = new ActivitiesController(mockActivityService.Object, AutoMapperSingleton.Mapper);

            // Act
            var actionResult = await controller.PatchActivityStatus(1, patchDto);

            //Assert
            Assert.IsType <NotFoundResult>(actionResult);
        }
Esempio n. 3
0
        public async Task <IActionResult> PatchActivityStatus(int id, [FromBody] PatchActivityStatusDto patchDoc)
        {
            if (patchDoc == null)
            {
                return(BadRequest());
            }

            var activityFromDb = await _activityService.GetActivityById(id);

            if (activityFromDb == null)
            {
                return(NotFound());
            }

            try
            {
                await _activityService.UpdateActivityStatus(activityFromDb, patchDoc.Status);
            }
            catch (DbUpdateConcurrencyException)
            {
                return(StatusCode(StatusCodes.Status500InternalServerError));
            }
            return(NoContent());
        }