public void Create_inputDtoAddTraining_AreSame()
        {
            var inputDtoAddTraining = new InputDtoAddTraining(20, 1, 1, 1);

            inputDtoAddTraining.UserId = 1;

            _userRepository.GetById(1).Returns(new User("name", "password", "*****@*****.**", "role"));
            _activityRepository.GetById(1).Returns(new Activity("name", 20, new Unit("km"), new Category()));
            _trainingDateRepository.GetById(1).Returns(new TrainingDate(new DateTime(20)));

            var activity = _activityRepository.GetById(1);

            activity.Id = 1;
            var user = _userRepository.GetById(1);

            user.Id = 1;
            var date = _trainingDateRepository.GetById(1);

            date.Id = 1;

            _trainingFactory
            .CreateTrainingFromValues(inputDtoAddTraining.Repetitions, user, activity, date)
            .Returns(new Training(user, 20, activity, date));

            _trainingRepository.Create(_trainingFactory.CreateTrainingFromValues(inputDtoAddTraining.Repetitions, user, activity, date))
            .Returns(new Training(user, 20, activity, date));

            var res = _trainingService.Create(inputDtoAddTraining);

            var expected = new OutputDtoAddTraining(1, inputDtoAddTraining.Repetitions, "name", new DateTime(20));

            Assert.AreEqual(expected, res);
        }
Exemple #2
0
        /**
         * Créer un training
         */
        public OutputDtoAddTraining Create(InputDtoAddTraining inputDtoAddTraining)
        {
            var user         = _userRepository.GetById(inputDtoAddTraining.UserId);
            var activity     = _activityRepository.GetById(inputDtoAddTraining.ActivityId);
            var trainingDate = _trainingDateRepository.GetById(inputDtoAddTraining.TrainingDateId);

            var trainingFromDto = _trainingFactory.CreateTrainingFromValues(inputDtoAddTraining.Repetitions, user, activity, trainingDate);
            var trainingInDb    = _trainingRepository.Create(trainingFromDto);

            return(new OutputDtoAddTraining
            {
                Id = trainingInDb.Id,
                Repetitions = trainingInDb.Repetitions,
                ActivityName = trainingInDb.Activity.Name,
                TrainingDateValue = trainingInDb.TrainingDate.Date
            });
        }
Exemple #3
0
 public ActionResult <OutputDtoAddTraining> Post([FromBody] InputDtoAddTraining inputDtoAddTraining)
 {
     return(Ok(_trainingService.Create(inputDtoAddTraining)));
 }