diff options
| -rw-r--r-- | app/models/training_session.rb | 1 | ||||
| -rw-r--r-- | app/views/training_sessions/_training_session.html.erb | 12 | ||||
| -rw-r--r-- | db/migrate/20150522042027_add_target_weight_to_training_sessions.rb | 5 | ||||
| -rw-r--r-- | db/schema.rb | 3 | ||||
| -rw-r--r-- | spec/models/training_session_spec.rb | 3 |
5 files changed, 21 insertions, 3 deletions
diff --git a/app/models/training_session.rb b/app/models/training_session.rb index cd4b007..104548b 100644 --- a/app/models/training_session.rb +++ b/app/models/training_session.rb @@ -12,6 +12,7 @@ class TrainingSession < ActiveRecord::Base workout.exercise_workouts.each_with_index do |exercise_workout, index| exercise_row = workout_row.exercises[index] session.exercise_sessions.create!( + target_weight: exercise_row['warmup']['targetWeight'], exercise_workout: exercise_workout, sets: [ exercise_row['set1'].to_i > 0 ? exercise_row['set1'] : 0, diff --git a/app/views/training_sessions/_training_session.html.erb b/app/views/training_sessions/_training_session.html.erb index 6a3307f..54b5853 100644 --- a/app/views/training_sessions/_training_session.html.erb +++ b/app/views/training_sessions/_training_session.html.erb @@ -2,7 +2,15 @@ <img src="http://placehold.it/1000x1000&text=Thumbnail"> <div class="panel"> - <h5><%= training_session.created_at %></h5> - <h6 class="subheader"><%= distance_of_time_in_words_to_now training_session.occurred_at %></h6> + <h5><%= training_session.workout.name %></h5> + <h6 class="subheader"><%= distance_of_time_in_words_to_now training_session.occurred_at %> ago</h6> + <% training_session.exercise_sessions.each do |exercise_session| %> + <p><%= exercise_session.exercise.name %> @ <%= exercise_session.target_weight %></p> + <ul> + <% exercise_session.sets.each do |set| %> + <li><%= set %></li> + <% end %> + </ul> + <% end %> </div> </div> diff --git a/db/migrate/20150522042027_add_target_weight_to_training_sessions.rb b/db/migrate/20150522042027_add_target_weight_to_training_sessions.rb new file mode 100644 index 0000000..f691443 --- /dev/null +++ b/db/migrate/20150522042027_add_target_weight_to_training_sessions.rb @@ -0,0 +1,5 @@ +class AddTargetWeightToTrainingSessions < ActiveRecord::Migration + def change + add_column :exercise_sessions, :target_weight, :float + end +end diff --git a/db/schema.rb b/db/schema.rb index 92c52e1..faa1a15 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 20150522040632) do +ActiveRecord::Schema.define(version: 20150522042027) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -23,6 +23,7 @@ ActiveRecord::Schema.define(version: 20150522040632) do t.datetime "created_at", null: false t.datetime "updated_at", null: false t.text "sets", default: [], array: true + t.float "target_weight" end create_table "exercise_workouts", id: :uuid, default: "uuid_generate_v4()", force: :cascade do |t| diff --git a/spec/models/training_session_spec.rb b/spec/models/training_session_spec.rb index c499375..aaed298 100644 --- a/spec/models/training_session_spec.rb +++ b/spec/models/training_session_spec.rb @@ -44,6 +44,7 @@ describe TrainingSession, type: :model do expect(training_session.exercise_sessions.map { |x| x.exercise.name }).to match_array(["Squat", "Bench Press", "Barbell Row"]) squat_session = training_session.exercise_sessions.find_by(exercise_workout: squat_workout) + expect(squat_session.target_weight).to eql(200.0) expect(squat_session.sets[0]).to eql('0') expect(squat_session.sets[1]).to eql('0') expect(squat_session.sets[2]).to eql('0') @@ -51,6 +52,7 @@ describe TrainingSession, type: :model do expect(squat_session.sets[4]).to eql('0') bench_session = training_session.exercise_sessions.find_by(exercise_workout: bench_workout) + expect(bench_session.target_weight).to eql(145.0) expect(bench_session.sets[0]).to eql("5") expect(bench_session.sets[1]).to eql("5") expect(bench_session.sets[2]).to eql("5") @@ -58,6 +60,7 @@ describe TrainingSession, type: :model do expect(bench_session.sets[4]).to eql("5") row_session = training_session.exercise_sessions.find_by(exercise_workout: row_workout) + expect(row_session.target_weight).to eql(130.0) expect(row_session.sets[0]).to eql("5") expect(row_session.sets[1]).to eql("4") expect(row_session.sets[2]).to eql("4") |
