public async Task <IActionResult> Update([FromRoute] int id, [FromBody] UpdateExerciseCommand command)
        {
            if (id != command.Id)
            {
                return(BadRequest());
            }

            return(Ok(await Mediator.Send(command)));
        }
        public void TheCorrectEntityIsUpdated()
        {
            var existing = new Exercise(new ExerciseDocument {
                Id = 12, Description = "bar", ExerciseType = ExerciseType.Cardio
            });
            var repo    = new Mock <IExerciseRepository>();
            var command = new UpdateExerciseCommand(12, "new description", ExerciseType.Strength);
            var handler = new UpdateExerciseCommandHandler(repo.Object);

            repo.Setup(x => x.Load(12)).Returns(existing).Verifiable();
            handler.Handle(command);

            repo.VerifyAll();
        }
예제 #3
0
        public Exercise UpdateExercise(UpdateExerciseCommand command)
        {
            var exercise = this.context.Exercises
                           .Include(e => e.BodyPartsUsed)
                           .Single(e => e.ExerciseId == command.ExerciseId);

            if (exercise != null)
            {
                exercise.ExerciseName  = command.ExerciseName;
                exercise.BodyPartsUsed = command.BodyParts;

                this.context.SaveChanges();
            }

            return(exercise);
        }
        public void TheChangesAreApplied()
        {
            var document = new ExerciseDocument {
                Id = 99, Description = "bar", ExerciseType = ExerciseType.Cardio
            };
            var existing = new Exercise(document);

            var repo = new Mock <IExerciseRepository>();

            repo.Setup(x => x.Load(99)).Returns(existing);

            var command = new UpdateExerciseCommand(99, "new description", ExerciseType.Strength);
            var handler = new UpdateExerciseCommandHandler(repo.Object);


            handler.Handle(command);

            document.Description.ShouldEqual("new description");
            document.ExerciseType.ShouldEqual(ExerciseType.Strength);
        }
예제 #5
0
        public IActionResult UpdateExercise([FromBody] UpdateExerciseCommand command)
        {
            _commandsBus.Send(command);

            return(Ok());
        }
예제 #6
0
 public Exercise Execute(UpdateExerciseCommand command)
 {
     return(this.repository.UpdateExercise(command));
 }
예제 #7
0
        public async Task <IActionResult> Update([FromBody] UpdateExerciseCommand command)
        {
            await Mediator.Send(command);

            return(NoContent());
        }