diff --git a/app/models/rate.rb b/app/models/rate.rb index 71b0283..bbe0347 100644 --- a/app/models/rate.rb +++ b/app/models/rate.rb @@ -13,4 +13,7 @@ class Rate < ActiveRecord::Base } } + def locked? + return self.time_entries.length > 0 + end end diff --git a/spec/models/rate_spec.rb b/spec/models/rate_spec.rb index 653c9c1..6601601 100644 --- a/spec/models/rate_spec.rb +++ b/spec/models/rate_spec.rb @@ -57,3 +57,16 @@ describe Rate, 'associations' do end +describe Rate, 'locked?' do + it 'should be true if a Time Entry is associated' do + rate = Rate.new + rate.time_entries << mock_model(TimeEntry) + rate.locked?.should be_true + end + + it 'should be false if no Time Entries are associated' do + rate = Rate.new + rate.locked?.should be_false + end + +end