summaryrefslogtreecommitdiffstats
path: root/spec/spec_helper.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/spec_helper.rb')
-rw-r--r--spec/spec_helper.rb357
1 files changed, 187 insertions, 170 deletions
diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb
index 9b2c452..257327e 100644
--- a/spec/spec_helper.rb
+++ b/spec/spec_helper.rb
@@ -1,19 +1,19 @@
#! /usr/bin/env ruby
begin
- require 'simplecov'
- SimpleCov.start do
- add_filter 'spec'
- end
+ require 'simplecov'
+ SimpleCov.start do
+ add_filter 'spec'
+ end
rescue LoadError
end
begin
- require 'coveralls'
- SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter.new [
- SimpleCov::Formatter::HTMLFormatter,
- Coveralls::SimpleCov::Formatter
- ]
+ require 'coveralls'
+ SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter.new [
+ SimpleCov::Formatter::HTMLFormatter,
+ Coveralls::SimpleCov::Formatter
+ ]
rescue LoadError
end
@@ -24,206 +24,223 @@ require 'zorglub/engines/file'
require 'zorglub/engines/haml'
require 'zorglub/engines/sass'
-HASH_PROC = Proc.new { |path,obj| {:path=>path,:layout=>obj.layout,:view=>obj.view,:args=>obj.args,:map=>obj.map}.to_yaml }
-STATIC_PROC = Proc.new { |path,obj| ["VAL #{obj.value}",'text/static'] }
-RENDER_PROC = Proc.new { |path,obj|
- case obj.state
- when :layout
- "layout_start #{obj.content} layout_end"
- when :view
- ["view_content", 'text/view']
- when :partial
- ['partial_content','text/partial']
- else
- raise Exception.new
- end
+HASH_PROC = proc { |path, obj| { path: path, layout: obj.layout, view: obj.view, args: obj.args, map: obj.map }.to_yaml }
+STATIC_PROC = proc { |_path, obj| ["VAL #{obj.value}", 'text/static'] }
+RENDER_PROC = proc { |_path, obj|
+ case obj.state
+ when :layout
+ "layout_start #{obj.content} layout_end"
+ when :view
+ ['view_content', 'text/view']
+ when :partial
+ ['partial_content', 'text/partial']
+ else
+ raise Exception.new
+ end
}
APP_ROOT = File.join Dir.pwd, 'spec', 'data'
class Zorglub::Node
- def self.my_call uri
- call( {'PATH_INFO'=>uri} )
- end
- def self.my_call_i uri
- call( {'PATH_INFO'=>uri} ).body[0].to_i
- end
+ def self.my_call(uri)
+ call({ 'PATH_INFO' => uri })
+ end
+
+ def self.my_call_i(uri)
+ call({ 'PATH_INFO' => uri }).body[0].to_i
+ end
end
class Temp < Zorglub::Node
end
class Node0 < Zorglub::Node
- # default
- def index
- html
- end
- def hello
- no_layout!
- 'world'
- end
- def with_2args a1, a2
- end
- def do_render
- engine! 'real'
- end
- def do_content_type
- engine! 'real'
- response.headers['Content-Type'] = 'text/mine'
- end
- def do_partial a1, a2
- engine! 'real'
- end
- def other_view
- engine! 'real'
- view! r('do_partial')
- end
- def do_redirect
- redirect r(:do_partial,1,2,3)
- end
- def xml_file
- no_layout!
- engine! :file
- ext! 'xml'
- mime! 'application/xml'
- end
- def plain_file
- no_layout!
- engine! :file
- ext! 'txt'
- mime! 'text/plain'
- end
- def no_view_no_layout
- no_view!
- no_layout!
- 'hello world'
- end
- def engines name
- no_layout!
- case name
- when 'haml'
- engine! :haml
- when 'sass'
- engine! :sass
- end
+ # default
+ def index
+ html
+ end
+
+ def hello
+ no_layout!
+ 'world'
+ end
+
+ def with_2args(arg1, arg2); end
+
+ def do_render
+ engine! 'real'
+ end
+
+ def do_content_type
+ engine! 'real'
+ response.headers['Content-Type'] = 'text/mine'
+ end
+
+ def do_partial(_arg1, _arg2)
+ engine! 'real'
+ end
+
+ def other_view
+ engine! 'real'
+ view! r('do_partial')
+ end
+
+ def do_redirect
+ redirect r(:do_partial, 1, 2, 3)
+ end
+
+ def xml_file
+ no_layout!
+ engine! :file
+ ext! 'xml'
+ mime! 'application/xml'
+ end
+
+ def plain_file
+ no_layout!
+ engine! :file
+ ext! 'txt'
+ mime! 'text/plain'
+ end
+
+ def no_view_no_layout
+ no_view!
+ no_layout!
+ 'hello world'
+ end
+
+ def engines(name)
+ no_layout!
+ case name
+ when 'haml'
+ engine! :haml
+ when 'sass'
+ engine! :sass
end
+ end
end
class Node1 < Zorglub::Node
- layout! 'layout-1'
- engine! 'engine-1'
- def index
- layout! 'main'
- engine! 'engine-2'
- end
+ layout! 'layout-1'
+ engine! 'engine-1'
+ def index
+ layout! 'main'
+ engine! 'engine-2'
+ end
end
class Node2 < Node1
- # inherited from Node1
+ # inherited from Node1
end
class Node3 < Zorglub::Node
- @before=0
- @after=0
- class << self
- attr_accessor :before, :after
- def post obj
- @after +=1
- end
- end
- before_all do |node|
- Node3.before +=1
- end
- after_all Node3.method(:post)
- layout! 'layout-2'
- engine! 'engine-2'
- def index
- Node3.before-Node3.after
- end
- def do_partial a1, a2
- view! Node0.r('do_partial')
- engine! 'real'
- end
+ @before = 0
+ @after = 0
+ class << self
+ attr_accessor :before, :after
+
+ def post(_obj)
+ @after += 1
+ end
+ end
+ before_all do |_node|
+ Node3.before += 1
+ end
+ after_all Node3.method(:post)
+ layout! 'layout-2'
+ engine! 'engine-2'
+ def index
+ Node3.before - Node3.after
+ end
+
+ def do_partial(_arg1, _arg2)
+ view! Node0.r('do_partial')
+ engine! 'real'
+ end
end
class Node8 < Node3
end
class Node4 < Zorglub::Node
- no_layout!
- cli_val :js,'js0'
- cli_val :js,'js1'
- def index
- cli_val(:js).to_yaml
- end
- def more
- cli_val :js,'js2'
- cli_val(:js).to_yaml
- end
+ no_layout!
+ cli_val :js, 'js0'
+ cli_val :js, 'js1'
+
+ def index
+ cli_val(:js).to_yaml
+ end
+
+ def more
+ cli_val :js, 'js2'
+ cli_val(:js).to_yaml
+ end
end
class Node5 < Node4
- cli_val :js, 'js3'
- cli_val :css, 'css0', 'css1'
- # no_layout! inherited from Node4
- def index
- js = cli_val(:js,'jsx')
- cli_val(:css, 'css0', 'css1','css2')
- css = cli_val :css
- js.concat(css).to_yaml
- end
+ cli_val :js, 'js3'
+ cli_val :css, 'css0', 'css1'
+ # no_layout! inherited from Node4
+ def index
+ js = cli_val(:js, 'jsx')
+ cli_val(:css, 'css0', 'css1', 'css2')
+ css = cli_val :css
+ js.concat(css).to_yaml
+ end
end
class Node6 < Zorglub::Node
- @static_cpt=0
- class << self
- attr_accessor :static_cpt
- end
- attr_reader :value
- static! true, 5
- def no_static
- static! false
- engine! 'static'
- view! Node0.r('do_render')
- Node6.static_cpt+=1
- @value = Node6.static_cpt
- end
- def do_static
- engine! 'static'
- view! Node0.r('do_render')
- Node6.static_cpt+=1
- @value = Node6.static_cpt
- end
+ @static_cpt = 0
+ class << self
+ attr_accessor :static_cpt
+ end
+ attr_reader :value
+
+ static! true, 5
+ def no_static
+ static! false
+ engine! 'static'
+ view! Node0.r('do_render')
+ Node6.static_cpt += 1
+ @value = Node6.static_cpt
+ end
+
+ def do_static
+ engine! 'static'
+ view! Node0.r('do_render')
+ Node6.static_cpt += 1
+ @value = Node6.static_cpt
+ end
end
class Node7 < Zorglub::Node
- layout_base_path! File.join APP_ROOT, 'alt','layout'
- view_base_path! File.join APP_ROOT, 'alt'
- def view_path
- view! 'do_render'
- end
+ layout_base_path! File.join APP_ROOT, 'alt', 'layout'
+ view_base_path! File.join APP_ROOT, 'alt'
+ def view_path
+ view! 'do_render'
+ end
end
APP = Zorglub::App.new do
- register_engine! :file, nil, Zorglub::Engines::File.method(:proc)
- register_engine! :haml, 'haml', Zorglub::Engines::Haml.method(:proc)
- register_engine! :sass, 'scss', Zorglub::Engines::Sass.method(:proc)
- register_engine! 'default', nil, HASH_PROC
- register_engine! 'engine-1', 'spec', HASH_PROC
- register_engine! 'engine-2', 'spec', HASH_PROC
- register_engine! 'real', nil, RENDER_PROC
- register_engine! 'static', nil, STATIC_PROC
- opt! :root, APP_ROOT
- opt! :engine, 'default'
- map '/node0', Node0
- map '/node1', Node1
- map '/node3', Node3
- map '/node4', Node4
- map '/node5', Node5
- map '/node6', Node6
- map '/node7', Node7
- map '/node8', Node8
+ register_engine! :file, nil, Zorglub::Engines::File.method(:proc)
+ register_engine! :haml, 'haml', Zorglub::Engines::Haml.method(:proc)
+ register_engine! :sass, 'scss', Zorglub::Engines::Sass.method(:proc)
+ register_engine! 'default', nil, HASH_PROC
+ register_engine! 'engine-1', 'spec', HASH_PROC
+ register_engine! 'engine-2', 'spec', HASH_PROC
+ register_engine! 'real', nil, RENDER_PROC
+ register_engine! 'static', nil, STATIC_PROC
+ opt! :root, APP_ROOT
+ opt! :engine, 'default'
+ map '/node0', Node0
+ map '/node1', Node1
+ map '/node3', Node3
+ map '/node4', Node4
+ map '/node5', Node5
+ map '/node6', Node6
+ map '/node7', Node7
+ map '/node8', Node8
end
class Node2
- map APP, '/node2'
+ map APP, '/node2'
end