public void Update() { // Arrange var updateTraining = new Training { Id = 2, MainTrainingPurpose = "The main purpose is 5...", Description = "Desc 5", }; _mock.Setup(s => s.Update(It.IsAny <TrainingDTO>())).Returns <TrainingDTO>(updateValue => { updateValue.ModifiedDate = DateTime.Now; var trainingIndex = _trainings.FindIndex(training => training.Id == updateValue.Id); _trainings[trainingIndex] = updateValue; return(new OperationResult { ResultItemId = updateValue.Id, Succeed = true }); }); // Act var result = _trainingController.Update(updateTraining); var operationResult = result as OkNegotiatedContentResult <IOperationResult>; // Assert Assert.IsInstanceOfType(result, typeof(OkNegotiatedContentResult <IOperationResult>)); Assert.IsTrue(operationResult.Content.Succeed); Assert.IsTrue(operationResult.Content.ResultItemId > 0); Assert.AreEqual(_trainings.Find(training => training.Id == updateTraining.Id).MainTrainingPurpose, updateTraining.MainTrainingPurpose); }