public void Put_Updates_Activity() { var originalActivity = new Activity(1, "Name", "Description", DateTime.Now, DateTime.Now, 1, 1, false, 1);; var expectedActivity = new List <Activity>() { originalActivity }; var updatedActivity = new Activity(1, "Name", "Description", DateTime.Now, DateTime.Now, 1, 1, false, 1); activityRepo.When(t => activityRepo.Update(updatedActivity)) .Do(Callback.First(t => expectedActivity.Remove(originalActivity)) .Then(t => expectedActivity.Add(updatedActivity))); activityRepo.GetAll().Returns(expectedActivity); var result = underTest.Put(updatedActivity); // Assert.Equal(expectedTodos, result.ToList()); Assert.All(result, item => Assert.Contains("Updated item", item.Name)); }