コード例 #1
0
        public void Create()
        {
            // Arrange
            var countTrainings = _trainings.Count;
            var newTraining    = new Training
            {
                MainTrainingPurpose = "The main purpose is 4...",
                Description         = "Desc 4",
                StartDateTime       = DateTime.Now,
                EndDateTime         = DateTime.Now.AddHours(1).AddMinutes(40),
            };

            _mock.Setup(s => s.Create(It.IsAny <TrainingDTO>())).Returns <TrainingDTO>(newItem =>
            {
                newItem.Id           = _trainings.Count + 1;
                newItem.CreatedDate  = DateTime.Now;
                newItem.ModifiedDate = DateTime.Now;

                _trainings.Add(newItem);

                return(new OperationResult
                {
                    ResultItemId = newItem.Id,
                    Succeed = true
                });
            });

            // Act
            var result          = _trainingController.Create(newTraining);
            var operationResult = result as OkNegotiatedContentResult <IOperationResult>;

            // Assert
            Assert.IsInstanceOfType(result, typeof(OkNegotiatedContentResult <IOperationResult>));
            Assert.AreEqual(countTrainings + 1, _trainings.Count);
            Assert.IsTrue(operationResult.Content.Succeed);
            Assert.IsTrue(operationResult.Content.ResultItemId > 0);
        }