Commit 268f926
Changed files (2)
app
models
android
spec
models
android
app/models/android/import.rb
@@ -39,11 +39,14 @@ class Android::Import
workout.exercise_workouts.each_with_index do |exercise_workout, index|
exercise_row = workout_row.exercises[index]
next if exercise_row.nil?
- training_session.train(
- exercise_workout.exercise,
- exercise_row["warmup"]["targetWeight"],
- sets_from(exercise_workout, exercise_row)
- )
+ sets_from(exercise_workout, exercise_row).each_with_index do |reps, set|
+ training_session.train(
+ exercise_workout.exercise,
+ exercise_row["warmup"]["targetWeight"],
+ repetitions: reps,
+ set: set,
+ )
+ end
end
end
end
spec/models/android/import_spec.rb
@@ -41,12 +41,7 @@ describe Android::Import do
training_session = user.training_sessions.order(:occurred_at).first
squat_session = training_session.progress_for(squat)
- expect(squat_session.target_weight).to eql(45.0)
- expect(squat_session.actual_sets[0]).to eql("5")
- expect(squat_session.actual_sets[1]).to eql("5")
- expect(squat_session.actual_sets[2]).to eql("5")
- expect(squat_session.actual_sets[3]).to eql("5")
- expect(squat_session.actual_sets[4]).to eql("5")
+ expect(squat_session.to_sets).to eql([5, 5, 5, 5, 5])
end
it "imports the completed bench exercise" do
@@ -54,12 +49,7 @@ describe Android::Import do
training_session = user.training_sessions.order(:occurred_at).first
bench_session = training_session.progress_for(bench_press)
- expect(bench_session.target_weight).to eql(65.0)
- expect(bench_session.actual_sets[0]).to eql("5")
- expect(bench_session.actual_sets[1]).to eql("5")
- expect(bench_session.actual_sets[2]).to eql("5")
- expect(bench_session.actual_sets[3]).to eql("5")
- expect(bench_session.actual_sets[4]).to eql("5")
+ expect(bench_session.to_sets).to eql([5, 5, 5, 5, 5])
end
it "imports the completed barbell row exercise" do
@@ -67,12 +57,7 @@ describe Android::Import do
training_session = user.training_sessions.order(:occurred_at).first
row_session = training_session.progress_for(barbell_row)
- expect(row_session.target_weight).to eql(65.0)
- expect(row_session.actual_sets[0]).to eql("5")
- expect(row_session.actual_sets[1]).to eql("5")
- expect(row_session.actual_sets[2]).to eql("5")
- expect(row_session.actual_sets[3]).to eql("5")
- expect(row_session.actual_sets[4]).to eql("5")
+ expect(row_session.to_sets).to eql([5, 5, 5, 5, 5])
end
it "excludes items that have already been imported" do