Commit a6a5f83

mo khan <mo@mokhan.ca>
2016-06-30 04:33:34
add another warmup.
1 parent e0791c3
Changed files (2)
app/models/user_recommendation.rb
@@ -17,6 +17,7 @@ class UserRecommendation
     warm_up_sets << warm_up(65.lbs, 3) if target_weight >= 95.lbs
     warm_up_sets << warm_up(75.lbs, 3) if target_weight >= 105.lbs
     warm_up_sets << warm_up(85.lbs, 3) if target_weight >= 125.lbs
+    warm_up_sets << warm_up(95.lbs, 5) if target_weight >= 135.lbs
     work_sets = recommended_sets.times.map do
       work_set(target_weight, repetitions)
     end
spec/models/program_spec.rb
@@ -126,6 +126,19 @@ describe Program do
             expect(warmup_sets.at(4).target_repetitions).to eql(3)
           end
         end
+
+        describe "when the work set is between 135 lbs and 150 lbs" do
+          it 'returns another warm up set' do
+            workout = create(:workout, user: user, routine: routine_a)
+            5.times { |n| workout.train(squat, 135, repetitions: 5) }
+
+            sets = subject.prepare_sets_for(user, squat)
+            warmup_sets = sets.find_all { |x| x.warm_up? }
+            expect(warmup_sets.length).to eql(6)
+            expect(warmup_sets.at(5).target_weight.lbs).to eql(95.lbs)
+            expect(warmup_sets.at(5).target_repetitions).to eql(5)
+          end
+        end
       end
     end