public function run()
 {
     ExerciseEntry::truncate();
     $this->faker = Faker::create();
     $users = User::all();
     foreach ($users as $user) {
         $this->user = $user;
         $this->unit_ids = Unit::where('user_id', $this->user->id)->where('for', 'exercise')->lists('id')->all();
         $this->exercise_ids = Exercise::where('user_id', $this->user->id)->lists('id')->all();
         $this->createEntriesForTheLastFiveDays();
     }
 }
 /**
  * @test
  * @return void
  */
 public function it_cannot_delete_an_exercise_unit_that_is_in_use()
 {
     DB::beginTransaction();
     $this->logInUser();
     $unit = Unit::where('for', 'exercise')->first();
     $response = $this->call('DELETE', '/api/exerciseUnits/' . $unit->id);
     $content = json_decode($response->getContent(), true);
     //        dd($content);
     $this->assertArrayHasKey('error', $content);
     $this->assertEquals('Unit could not be deleted. It is in use.', $content['error']);
     $this->assertEquals(400, $response->getStatusCode());
     DB::rollBack();
 }
Ejemplo n.º 3
0
 /**
  *
  */
 private function createRecipes()
 {
     foreach (Config::get('recipes') as $tempRecipe) {
         $recipe = new Recipe(['name' => $tempRecipe['name']]);
         $recipe->user()->associate($this->user);
         $recipe->save();
         foreach ($tempRecipe['ingredients'] as $ingredient) {
             $food = Food::where('user_id', $this->user->id)->where('name', $ingredient['food'])->first();
             $recipe->foods()->attach([$food->id => ['unit_id' => Unit::where('user_id', $this->user->id)->where('name', $ingredient['unit'])->first()->id, 'quantity' => $ingredient['quantity'], 'description' => $ingredient['description']]]);
         }
         foreach ($tempRecipe['tags'] as $tempTag) {
             $tag = Tag::where('user_id', $this->user->id)->where('name', $tempTag)->first();
             $recipe->tags()->attach([$tag->id => ['taggable_type' => 'recipe']]);
         }
         $recipe->save();
     }
 }
Ejemplo n.º 4
0
 public function run()
 {
     Exercise::truncate();
     $this->faker = Faker::create();
     $pushups = [['name' => 'kneeling pushups', 'defaultQuantity' => 20, 'description' => '', 'priority' => 2, 'frequency' => 7], ['name' => 'pushups', 'defaultQuantity' => 10, 'description' => 'hands shoulder width', 'priority' => 1], ['name' => 'one-arm pushups', 'defaultQuantity' => 2, 'description' => 'free hand behind back', 'priority' => 1]];
     $squats = [['name' => 'assisted squats', 'defaultQuantity' => 50, 'description' => 'hold onto something', 'priority' => 3, 'frequency' => 3], ['name' => 'squats', 'defaultQuantity' => 30, 'description' => 'feet shoulder width', 'priority' => 2], ['name' => 'one-legged-squats', 'defaultQuantity' => 5, 'description' => '', 'priority' => 1]];
     $gymnasticRings = [['name' => 'back lever', 'defaultQuantity' => 30, 'description' => '', 'priority' => 1, 'frequency' => 4]];
     $flexibility = [['name' => 'hamstrings', 'defaultQuantity' => 20, 'description' => '', 'priority' => 2, 'stretch' => 1, 'frequency' => 7], ['name' => 'calves', 'defaultQuantity' => 10, 'description' => 'great stretch', 'priority' => 1, 'stretch' => 1]];
     $users = User::all();
     foreach ($users as $user) {
         $this->user = $user;
         $exercise_unit_ids = Unit::where('user_id', $this->user->id)->where('for', 'exercise')->lists('id')->all();
         $this->insertExercisesInSeries($pushups, Unit::find($exercise_unit_ids[0]), Series::where('user_id', $this->user->id)->where('name', 'pushup')->first());
         $this->insertExercisesInSeries($squats, Unit::find($exercise_unit_ids[1]), Series::where('user_id', $this->user->id)->where('name', 'squat')->first());
         $this->insertExercisesInSeries($gymnasticRings, Unit::find($exercise_unit_ids[1]), Series::where('user_id', $this->user->id)->where('name', 'gymnastic rings')->first());
         $this->insertExercisesInSeries($flexibility, Unit::find($exercise_unit_ids[1]), Series::where('user_id', $this->user->id)->where('name', 'flexibility')->first());
     }
 }
Ejemplo n.º 5
0
 /**
  *
  * @param Food $food
  * @param $tempFood
  */
 private function attachDefaultUnit(Food $food, $tempFood)
 {
     $defaultUnit = Unit::where('user_id', $this->user->id)->where('name', $tempFood['defaultUnit'])->first();
     $food->defaultUnit()->associate($defaultUnit);
 }
 /**
  *
  * @param Request $request
  * @param Exercise $exercise
  * @return mixed
  */
 public function update(Request $request, Exercise $exercise)
 {
     // Create an array with the new fields merged
     $data = array_compare($exercise->toArray(), $request->only(['name', 'step_number', 'default_quantity', 'description', 'target', 'priority', 'frequency']));
     $exercise->update($data);
     if ($request->has('stretch')) {
         $exercise->stretch = $request->get('stretch');
         $exercise->save();
     }
     if ($request->has('series_id')) {
         $series = Series::findOrFail($request->get('series_id'));
         $exercise->series()->associate($series);
         $exercise->save();
     }
     if ($request->has('program_id')) {
         $program = ExerciseProgram::findOrFail($request->get('program_id'));
         $exercise->program()->associate($program);
         $exercise->save();
     }
     if ($request->has('default_unit_id')) {
         $unit = Unit::where('for', 'exercise')->findOrFail($request->get('default_unit_id'));
         $exercise->defaultUnit()->associate($unit);
         $exercise->save();
     }
     return $this->responseOkWithTransformer($exercise, new ExerciseTransformer());
 }