spec/chanko/invoker_spec.rb in chanko-2.0.5 vs spec/chanko/invoker_spec.rb in chanko-2.0.6

- old
+ new

@@ -113,9 +113,26 @@ it "invokes given block as a fallback" do controller.invoke(:example_unit, :default) { "default" }.should == "default" end end + context "when nested run_default is called in function" do + it "invokes given block as a fallback" do + Chanko::Loader.load("sensitive_unit") + expect(SensitiveUnit).to receive(:ping).once + + controller.invoke(:sensitive_unit, :outer_default) do + "default" + end.should eq "default" + end + + it 'use both locals' do + controller.invoke(:example_unit, :nesting_locals_outer, :locals => { :outer_one => "outer_one", :outer_two => "outer_two", :outer_three => "outer_three"}) do + "default" + end.should eq "outer_one.inner_one.outer_two.default.inner_two.outer_three" + end + end + context "when run_default is called but no block given" do it "invokes given block as a fallback" do controller.invoke(:example_unit, :default).should == nil end end