From b07d9d8db0c47482ca170348df8ae9154551db5f Mon Sep 17 00:00:00 2001 From: Skud Date: Sat, 30 Aug 2014 09:11:19 +1000 Subject: [PATCH] Added finished fields for plantings --- app/models/planting.rb | 3 ++- .../20140829230600_add_finished_to_planting.rb | 6 ++++++ db/schema.rb | 12 +++++++----- spec/factories/planting.rb | 5 +++++ spec/models/planting_spec.rb | 6 ++++++ 5 files changed, 26 insertions(+), 6 deletions(-) create mode 100644 db/migrate/20140829230600_add_finished_to_planting.rb diff --git a/app/models/planting.rb b/app/models/planting.rb index b848d3490..afeeb2137 100644 --- a/app/models/planting.rb +++ b/app/models/planting.rb @@ -3,7 +3,8 @@ class Planting < ActiveRecord::Base friendly_id :planting_slug, use: :slugged attr_accessible :crop_id, :description, :garden_id, :planted_at, - :quantity, :sunniness, :planted_from, :owner_id + :quantity, :sunniness, :planted_from, :owner_id, :finished, + :finished_at belongs_to :garden belongs_to :owner, :class_name => 'Member', :counter_cache => true diff --git a/db/migrate/20140829230600_add_finished_to_planting.rb b/db/migrate/20140829230600_add_finished_to_planting.rb new file mode 100644 index 000000000..8be30756a --- /dev/null +++ b/db/migrate/20140829230600_add_finished_to_planting.rb @@ -0,0 +1,6 @@ +class AddFinishedToPlanting < ActiveRecord::Migration + def change + add_column :plantings, :finished, :boolean, :default => false + add_column :plantings, :finished_at, :date + end +end diff --git a/db/schema.rb b/db/schema.rb index 489a9e6b6..29271f5e6 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended to check this file into your version control system. -ActiveRecord::Schema.define(:version => 20140718075753) do +ActiveRecord::Schema.define(:version => 20140829230600) do create_table "account_types", :force => true do |t| t.string "name", :null => false @@ -213,17 +213,19 @@ ActiveRecord::Schema.define(:version => 20140718075753) do end create_table "plantings", :force => true do |t| - t.integer "garden_id", :null => false - t.integer "crop_id", :null => false + t.integer "garden_id", :null => false + t.integer "crop_id", :null => false t.date "planted_at" t.integer "quantity" t.text "description" - t.datetime "created_at", :null => false - t.datetime "updated_at", :null => false + t.datetime "created_at", :null => false + t.datetime "updated_at", :null => false t.string "slug" t.string "sunniness" t.string "planted_from" t.integer "owner_id" + t.boolean "finished", :default => false + t.date "finished_at" end add_index "plantings", ["slug"], :name => "index_plantings_on_slug", :unique => true diff --git a/spec/factories/planting.rb b/spec/factories/planting.rb index 6bfe8554c..5d229d545 100644 --- a/spec/factories/planting.rb +++ b/spec/factories/planting.rb @@ -30,5 +30,10 @@ FactoryGirl.define do factory :shady_planting do sunniness 'shade' end + + factory :finished_planting do + finished true + finished_at '2014-08-30' + end end end diff --git a/spec/models/planting_spec.rb b/spec/models/planting_spec.rb index eae16cbe5..65e7b890e 100644 --- a/spec/models/planting_spec.rb +++ b/spec/models/planting_spec.rb @@ -209,6 +209,12 @@ describe Planting do Planting.interesting.should_not include @planting1 end + it 'has finished fields' do + @planting = FactoryGirl.create(:finished_planting) + @planting.finished.should be true + @planting.finished_at.should be_an_instance_of Date + end + end end