spec/mongomodel/concerns/validations_spec.rb in mongomodel-0.4.1 vs spec/mongomodel/concerns/validations_spec.rb in mongomodel-0.4.2
- old
+ new
@@ -1,21 +1,15 @@
require 'spec_helper'
module MongoModel
- module ValidationHelpers
- def clear_validations!
- reset_callbacks(:validate)
- end
- end
-
specs_for(Document, EmbeddedDocument) do
describe "validations" do
define_class(:TestDocument, described_class) do
property :title, String
validates_presence_of :title
- extend MongoModel::ValidationHelpers
+ extend ValidationHelpers
end
if specing?(EmbeddedDocument)
define_class(:ParentDocument, Document) do
property :child, TestDocument
@@ -82,10 +76,23 @@
end
it { should_not be_valid }
end
end
+
+ describe "validation on custom context" do
+ before(:each) do
+ TestDocument.clear_validations!
+ TestDocument.validates_presence_of :title, :on => :custom
+ end
+
+ it { should be_valid }
+
+ it "should not be valid in custom context" do
+ subject.valid?(:custom).should be_false
+ end
+ end
end
describe "validation shortcuts" do
define_class(:TestDocument, described_class)
@@ -109,10 +116,10 @@
describe "validations" do
define_class(:ChildDocument, EmbeddedDocument) do
property :title, String
validates_presence_of :title
- extend MongoModel::ValidationHelpers
+ extend ValidationHelpers
end
define_class(:ParentDocument, Document) do
property :child, ChildDocument
end