summaryrefslogtreecommitdiffstats
path: root/spec
diff options
context:
space:
mode:
Diffstat (limited to 'spec')
-rw-r--r--spec/node_spec.rb30
-rw-r--r--spec/spec_helper.rb14
2 files changed, 20 insertions, 24 deletions
diff --git a/spec/node_spec.rb b/spec/node_spec.rb
index 4b4fbed..889ba7c 100644
--- a/spec/node_spec.rb
+++ b/spec/node_spec.rb
@@ -126,31 +126,25 @@ describe Zorglub do
r.header['location'].should == Node0.r(:do_partial,1,2,3)
end
#
- it "defs should be inherited" do
+ it "inherited_vars should be inherited and extended" do
r = Node5.my_call '/index'
- ar = YAML.load r.body[0]
- ar[0].should == 'js0'
- ar[1].should == 'js1'
- ar[2].should == 'js3'
- ar[3].should == 'jsx'
- ar[4].should be_nil
+ vars = YAML.load r.body[0]
+ vars.should == ['js0','js1','js3','jsx','css0','css1','css2']
+ vars[7].should be_nil
end
#
- it "defs should be method scope modified" do
+ it "inherited_vars should be extended at method level" do
r = Node4.my_call '/more'
- ar = YAML.load r.body[0]
- ar[0].should == 'js0'
- ar[1].should == 'js1'
- ar[2].should == 'js2'
- ar[3].should be_nil
+ vars = YAML.load r.body[0]
+ vars.should == ['js0','js1','js2']
+ vars[3].should be_nil
end
#
- it "defs should not have been modified by other method" do
+ it "inherited_vars should be untouched" do
r = Node4.my_call '/index'
- ar = YAML.load r.body[0]
- ar[0].should == 'js0'
- ar[1].should == 'js1'
- ar[2].should be_nil
+ vars = YAML.load r.body[0]
+ vars.should == ['js0','js1']
+ vars[2].should be_nil
end
end
#
diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb
index 84aebdd..96d224f 100644
--- a/spec/spec_helper.rb
+++ b/spec/spec_helper.rb
@@ -11,7 +11,6 @@ end
require 'yaml'
#
require 'zorglub'
-require 'zorglub/defs'
#
HASH_PROC = Proc.new { |path,obj| {:path=>path,:layout=>obj.layout,:view=>obj.view,:args=>obj.args}.to_yaml }
RENDER_PROC = Proc.new { |path,obj|
@@ -101,22 +100,25 @@ class Node3 < Zorglub::Node
end
#
class Node4 < Zorglub::Node
- defs :js,'js0','js1'
+ inherited_var :js,'js0','js1'
def index
no_layout
- defs(:js).to_yaml
+ inherited_var(:js).to_yaml
end
def more
no_layout
- defs(:js,'js2').to_yaml
+ inherited_var(:js,'js2').to_yaml
end
end
#
class Node5 < Node4
- defs :js, 'js3'
+ inherited_var :js, 'js3'
+ inherited_var :css, 'css0', 'css1'
def index
no_layout
- defs(:js,'jsx').to_yaml
+ js = inherited_var(:js,'jsx')
+ css = inherited_var(:css, 'css0', 'css1','css2')
+ js.concat(css).to_yaml
end
end
#