private void MethodDeleteThrowsExceptionWhenInvalid()
        {
            _repository.Setup(repo => repo.GetById(5555)).Returns(_exercise1);
            _repository.Setup(repo => repo.Delete(_exercise1)).Throws(new Exception());

            Assert.Throws <Exception>(() => _service.Delete(5555));
        }
Пример #2
0
        public async Task Update_Subject_State_On_Delete(Mock <IAuthorizationService> authorizationService, Mock <IStateService> stateService, Exercise exercise)
        {
            stateService.Setup(x => x.UpdateSubjectState(It.IsAny <Guid>(), It.IsAny <CancellationToken>()));

            var context     = TestSetup.SetupContext();
            var httpContext = TestSetup.SetupHttpContext();

            await context.Exercises.AddAsync(exercise);

            await context.SaveChangesAsync();

            var service = new ExerciseService(context, httpContext, authorizationService.Object, stateService.Object);
            await service.Delete(exercise.Id);

            stateService.VerifyAll();
        }
Пример #3
0
        public void Delete()
        {
            //Arrange
            var idForRemove = 1;

            _mock.Setup(s => s.Delete(It.IsAny <int>())).Callback <int>(id =>
            {
                var removeExercise = _exercises.Find(ex => ex.Id == id);
                _exercises.Remove(removeExercise);
            });

            //Act
            var result = _exerciseService.Delete(idForRemove);

            //Assert
            Assert.IsNotNull(result);
            Assert.IsTrue(result.Succeed);
            Assert.IsTrue(result.ResultItemId > 0);
            Assert.IsFalse(_exercises.Any(ex => ex.Id == result.ResultItemId));
        }
Пример #4
0
        public async Task <IActionResult> ExercisesDelete(
            [HttpTrigger(AuthorizationLevel.User, "delete", Route = "exercises/{exerciseId}")] HttpRequest req,
            int exerciseId,
            [SwaggerIgnore] ClaimsPrincipal userClaim)
        {
            // only admin can delete exercise
            if (!userClaim.IsInRole(UserType.Admin.ToString()))
            {
                return(ForbiddenObjectResult.Create(new ErrorResponse(ErrorCode.UNAUTHORIZED_ROLE_NO_PERMISSIONS)));
            }

            // delete exercise
            bool exerciseDeleted = await exerciseService.Delete(exerciseId);

            // if exercise was not found
            if (!exerciseDeleted)
            {
                return(new NotFoundObjectResult(new ErrorResponse(ErrorCode.EXERCISE_NOT_FOUND)));
            }

            return(new OkResult());
        }
Пример #5
0
 public void Delete(Int32 Id)
 {
     exerciseService.Delete(Id);
 }