public WeeklyWorkout InsertWeeklyWorkout(WeeklyWorkout newWeeklyWorkout, ApplicationUser user)
        {
            var toSave = new WeeklyWorkout()
            {
                Name = newWeeklyWorkout.Name,

                WorkoutType = Models.Type.Weekly
            };

            toSave.UserID = user.Id;
            user.WeeklyWorkouts.Add(toSave);
            _context.WeeklyWorkouts.Add(toSave);
            toSave.DayOne = _context.DailyWorkouts
                            .Where(m => m.Id == newWeeklyWorkout.DayOne.Id).SingleOrDefault();
            toSave.DayTwo = _context.DailyWorkouts
                            .Where(m => m.Id == newWeeklyWorkout.DayTwo.Id).SingleOrDefault();
            toSave.DayThree = _context.DailyWorkouts
                              .Where(m => m.Id == newWeeklyWorkout.DayThree.Id).SingleOrDefault();
            toSave.DayFour = _context.DailyWorkouts
                             .Where(m => m.Id == newWeeklyWorkout.DayFour.Id).SingleOrDefault();
            toSave.DayFive = _context.DailyWorkouts
                             .Where(m => m.Id == newWeeklyWorkout.DayFive.Id).SingleOrDefault();
            toSave.DaySix = _context.DailyWorkouts
                            .Where(m => m.Id == newWeeklyWorkout.DaySix.Id).SingleOrDefault();
            toSave.DaySeven = _context.DailyWorkouts
                              .Where(m => m.Id == newWeeklyWorkout.DaySeven.Id).SingleOrDefault();

            _context.SaveChanges();

            return(toSave);
        }
        public void UpdateWeeklyWorkout(int id,
                                        WeeklyWorkout updatedWeeklyWorkout)
        {
            _context.Entry(updatedWeeklyWorkout).State = EntityState.Modified;
            var saveInstace = _context.WeeklyWorkouts.SingleOrDefault(m => m.Id == updatedWeeklyWorkout.Id);

            saveInstace.Name = updatedWeeklyWorkout.Name;
            saveInstace
            .DayOne              = _context.DailyWorkouts.SingleOrDefault(p => p.Id == updatedWeeklyWorkout.DayOne.Id);
            saveInstace.DayTwo   = _context.DailyWorkouts.SingleOrDefault(p => p.Id == updatedWeeklyWorkout.DayTwo.Id);
            saveInstace.DayThree = _context.DailyWorkouts.SingleOrDefault(p => p.Id == updatedWeeklyWorkout.DayThree.Id);
            saveInstace.DayFour  = _context.DailyWorkouts.SingleOrDefault(p => p.Id == updatedWeeklyWorkout.DayFour.Id);
            saveInstace.DayFive  = _context.DailyWorkouts.SingleOrDefault(p => p.Id == updatedWeeklyWorkout.DayFive.Id);
            saveInstace.DaySix   = _context.DailyWorkouts.SingleOrDefault(p => p.Id == updatedWeeklyWorkout.DaySix.Id);
            saveInstace.DaySeven = _context.DailyWorkouts.SingleOrDefault(p => p.Id == updatedWeeklyWorkout.DaySeven.Id);
            try
            {
                _context.SaveChanges();
            }
            catch (DbUpdateConcurrencyException e)
            {
                // Létezett-e egyáltalán
                var _ = _context.WeeklyWorkouts.AsNoTracking().SingleOrDefault(p => p.Id == id)
                        ?? throw new EntityNotFoundException("Nem található az edzés");

                throw;
            }
        }
        public void DeleteWeeklyWorkout()
        {
            //Arrange
            var saveInstance = new WeeklyWorkout()
            {
                Name     = "TestWeekly8",
                DayOne   = _testDailyWorkout,
                DayTwo   = _testDailyWorkout,
                DayThree = _testDailyWorkout,
                DayFour  = _testDailyWorkout,
                DayFive  = _testDailyWorkout,
                DaySix   = _testDailyWorkout,
                DaySeven = _testDailyWorkout,
            };
            var _testWorkout1 = _weeklyWorkoutService.InsertWeeklyWorkout(saveInstance, _testUser);

            //Act
            var countBefore = _weeklyWorkoutService.GetWeeklyWorkouts(_testUser).Count();

            _weeklyWorkoutService.DeleteWeeklyWorkout(_testWorkout1.Id, _testUser);
            var countAfter = _weeklyWorkoutService.GetWeeklyWorkouts(_testUser).Count();

            //Assert
            Assert.AreNotEqual(countBefore, countAfter);
        }
        public void UpdateWeeklyWorkout()
        {
            //Arrange
            var saveInstance = new WeeklyWorkout()
            {
                Name     = "TestWeekly",
                DayOne   = _testDailyWorkout,
                DayTwo   = _testDailyWorkout,
                DayThree = _testDailyWorkout,
                DayFour  = _testDailyWorkout,
                DayFive  = _testDailyWorkout,
                DaySix   = _testDailyWorkout,
                DaySeven = _testDailyWorkout,
            };

            _testWorkout = _weeklyWorkoutService.InsertWeeklyWorkout(saveInstance, _testUser);

            //Act
            _testWorkout.Name = "Ultra kemény királyság";
            _weeklyWorkoutService.UpdateWeeklyWorkout(_testWorkout.Id, _testWorkout);

            //Assert
            Assert.AreEqual(_weeklyWorkoutService.GetWeeklyWorkout(_testWorkout.Id, _testUser).Name,
                            "Ultra kemény királyság");
        }
        public void InsertWeeklyWorkout()
        {
            //Arrange
            var saveInstance = new WeeklyWorkout()
            {
                Name     = "TestWeeklyy",
                DayOne   = _testDailyWorkout,
                DayTwo   = _testDailyWorkout,
                DayThree = _testDailyWorkout,
                DayFour  = _testDailyWorkout,
                DayFive  = _testDailyWorkout,
                DaySix   = _testDailyWorkout,
                DaySeven = _testDailyWorkout,
            };

            //Act
            var coutnBefore = _weeklyWorkoutService.GetWeeklyWorkouts(_testUser).Count();

            _weeklyWorkoutService.InsertWeeklyWorkout(saveInstance, _testUser);
            var coutnAfter = _weeklyWorkoutService.GetWeeklyWorkouts(_testUser).Count();

            //Asser
            Assert.AreNotEqual(coutnAfter, coutnBefore);
        }
Ejemplo n.º 6
0
 public IActionResult Put(int id, [FromBody] WeeklyWorkout weeklyWorkout)
 {
     _weeklyWorkoutService.UpdateWeeklyWorkout(id, weeklyWorkout);
     return(NoContent());
 }
Ejemplo n.º 7
0
        public IActionResult Post([FromBody] WeeklyWorkout weeklyWorkout)
        {
            var created = _weeklyWorkoutService.InsertWeeklyWorkout(weeklyWorkout, _user);

            return(CreatedAtAction(nameof(Get), new { created.Id }, created));
        }