Commit 5375873
Changed files (3)
app
models
views
training_histories
spec
models
app/models/training_history.rb
@@ -15,6 +15,13 @@ class TrainingHistory
maximum(:target_weight)
end
+ def completed_any?
+ user.
+ exercise_sessions.
+ joins(:exercise).
+ any?
+ end
+
def to_line_chart
user.
exercise_sessions.
app/views/training_histories/_training_history.html.erb
@@ -1,5 +1,6 @@
-
-<div class="panel">
-<p class="medium-text-center"><%= training_history.exercise.name %> </p>
-<%= line_chart training_history.to_line_chart %>
-</div>
+<% if training_history.completed_any? %>
+ <div class="panel">
+ <p class="medium-text-center"><%= training_history.exercise.name %> </p>
+ <%= line_chart training_history.to_line_chart %>
+ </div>
+<% end %>
spec/models/training_history_spec.rb
@@ -22,4 +22,20 @@ describe TrainingHistory do
expect(result.values.first).to eql(target_weight.to_f)
end
end
+
+ describe "#completed_any" do
+ describe "when this exercise has never been performed" do
+ it 'returns false' do
+ expect(subject.completed_any?).to be_falsey
+ end
+ end
+
+ describe "when the exercise has been performed at least once" do
+ it 'returns true' do
+ session = user.begin_workout(workout_a, DateTime.now, 225)
+ session.train(squat, 310, [5, 5, 5])
+ expect(subject.completed_any?).to be_truthy
+ end
+ end
+ end
end