Commit 18008c1
Changed files (2)
app
models
spec
models
app/models/workout.rb
@@ -11,7 +11,11 @@ class Workout < ActiveRecord::Base
slug
end
- def add_exercise(exercise, sets:, repetitions:)
- exercise_workouts.create!(exercise: exercise, sets: sets, repetitions: repetitions)
+ def add_exercise(exercise, sets: 5, repetitions: 5)
+ exercise_workouts.create!(
+ exercise: exercise,
+ sets: sets,
+ repetitions: repetitions
+ )
end
end
spec/models/workout_spec.rb
@@ -0,0 +1,30 @@
+require "rails_helper"
+
+describe Workout do
+ subject { build(:workout) }
+
+ describe "#add_exercise" do
+ let(:exercise) { create(:exercise) }
+
+ before :each do
+ subject.save!
+ end
+
+ it "adds a new exercise with the specified sets" do
+ sets = rand(10)
+ subject.add_exercise(exercise, sets: sets)
+ expect(subject.exercise_workouts.first.sets).to eql(sets)
+ end
+
+ it "adds the new exercise with the specified reps" do
+ repetitions = rand(10)
+ subject.add_exercise(exercise, repetitions: repetitions)
+ expect(subject.exercise_workouts.first.repetitions).to eql(repetitions)
+ end
+
+ it "adds the excercise" do
+ subject.add_exercise(exercise)
+ expect(subject.exercise_workouts.first.exercise).to eql(exercise)
+ end
+ end
+end