Commit 9fe362d
Changed files (2)
app
models
ios
spec
models
ios
app/models/ios/import.rb
@@ -30,8 +30,9 @@ class Ios::Import
db[:ZWEIGHT].
where(Z_PK: exercise_set_row[:ZWEIGHT]).each do |weight_row|
target_weight = weight_row[:ZVAL]
- sets = sets_from(exercise_set_row)
- training_session.train(exercise, target_weight, sets)
+ sets_from(exercise_set_row).each_with_index do |reps, set|
+ training_session.train(exercise, target_weight, repetitions: reps, set: set)
+ end
end
end
end
@@ -46,7 +47,7 @@ class Ios::Import
(1..5).inject([]) do |memo, n|
column = "ZSET#{n}".to_sym
memo << row[column] if row[column] && row[column] != -3
- end
+ end || []
end
def database_file(directory)
spec/models/ios/import_spec.rb
@@ -50,7 +50,7 @@ describe Ios::Import do
training_session = training_sessions.first
first_exercises = training_session.exercise_sessions
expect(first_exercises.count).to eql(3)
- expect(first_exercises.first.actual_sets).to eql(["5", "5", "5", "5", "5"])
+ expect(first_exercises.first.to_sets).to eql([5, 5, 5, 5, 5])
expected_date = DateTime.new(2015, 05, 02, 23, 27, 05)
expect(training_session.occurred_at.to_i).to eql(expected_date.to_i)
@@ -67,13 +67,7 @@ describe Ios::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
@@ -81,12 +75,7 @@ describe Ios::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(45.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
@@ -94,12 +83,7 @@ describe Ios::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