Sha256: bd4a5b54329deb1c417ff2a68b880db1e4d0c9a6b6686543c1ff8354bafbd432
Contents?: true
Size: 1.99 KB
Versions: 1
Compression:
Stored size: 1.99 KB
Contents
require "spec_helper" describe Schematic::Generator::Sandbox do subject { Schematic::Generator::Sandbox.new(klass) } let(:klass) { Object } describe "ignoring elements" do context "on the base element" do it "should add the method to the ignored list" do subject.run do ignore :foo end subject.ignored_elements.should include(:foo) end it "accepts multiple fields" do subject.run do ignore :foo, :bar end subject.ignored_elements.should include(:foo) subject.ignored_elements.should include(:bar) end end context "on nested elements" do it "should remove the method to the element list" do subject.run do ignore :foo => [:bar] end subject.ignored_elements[:foo].should == [:bar] end end end describe "adding elements" do context "given a single element" do it "should add the method to the element list" do subject.run do add :foo end subject.added_elements.keys.should include(:foo) end end context "nesting elements" do it "should add the method to the element list" do subject.run do add :foo => { :bar => nil } end subject.added_elements[:foo].should == { :bar => nil } end end context "sequence of subelements" do it "should add the method to the element list" do subject.run do add :foo => [:bar] end subject.added_elements[:foo].should == [:bar] end end end describe "requiring elements" do it "should add the method to the required list" do subject.run do required :foo end subject.required_elements.should include(:foo) end it "accepts multiple fields" do subject.run do required :foo, :bar end subject.required_elements.should include(:foo) subject.required_elements.should include(:bar) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
schematic-0.5.6 | spec/schematic/generator/sandbox_spec.rb |