Skip to content

Instantly share code, notes, and snippets.

@cdemyanovich
Created February 23, 2011 18:15
Show Gist options
  • Save cdemyanovich/840862 to your computer and use it in GitHub Desktop.
Save cdemyanovich/840862 to your computer and use it in GitHub Desktop.
class Order < ActiveRecord::Base
has_many :line_items, :dependent => :destroy, :order => "position"
accepts_nested_attributes_for :line_items, :allow_destroy => true, :reject_if => lambda { |attributes| attributes["amount"].blank? }
validates_associated :line_items
private
def validate
self.errors.add_to_base("An order needs at least one line item") if self.line_items.empty?
end
end
describe Order, "being valid" do
it "requires at least one line item" do
order = Order.new
order.should_not be_valid
order.errors.on_base.should include("An order needs at least one line item")
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment