markaby 0.7.0 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. data/.gitignore +19 -3
  2. data/CHANGELOG.rdoc +4 -0
  3. data/Gemfile +8 -0
  4. data/Gemfile.lock +22 -0
  5. data/Markaby.gemspec +20 -118
  6. data/README.rdoc +20 -96
  7. data/Rakefile +20 -50
  8. data/VERSION +1 -1
  9. data/lib/markaby/builder.rb +25 -4
  10. data/lib/markaby/builder_tags.rb +22 -2
  11. data/lib/markaby/kernel_method.rb +1 -0
  12. data/lib/markaby/tags.rb +97 -1
  13. data/lib/markaby/version.rb +3 -0
  14. data/lib/markaby.rb +2 -6
  15. data/spec/markaby/css_proxy_spec.rb +12 -17
  16. data/spec/markaby/html5_spec.rb +100 -0
  17. data/spec/markaby/markaby_spec.rb +10 -69
  18. data/spec/markaby/markaby_test_unit_spec.rb +251 -0
  19. data/spec/spec_helper.rb +4 -6
  20. metadata +85 -124
  21. data/garlic.rb +0 -29
  22. data/init.rb +0 -6
  23. data/lib/markaby/rails/current.rb +0 -85
  24. data/lib/markaby/rails/deprecated.rb +0 -124
  25. data/lib/markaby/rails/rails_builder.rb +0 -74
  26. data/lib/markaby/rails.rb +0 -75
  27. data/lib/markaby/sinatra.rb +0 -18
  28. data/lib/markaby/tilt.rb +0 -42
  29. data/spec/markaby/markaby_other_static.mab +0 -1
  30. data/spec/markaby/rails/spec_helper.rb +0 -29
  31. data/spec/markaby/rails/views/layouts/layout.mab +0 -11
  32. data/spec/markaby/rails/views/markaby/_a_partial.mab +0 -3
  33. data/spec/markaby/rails/views/markaby/_partial_child_with_locals.mab +0 -1
  34. data/spec/markaby/rails/views/markaby/access_to_helpers.mab +0 -1
  35. data/spec/markaby/rails/views/markaby/broken.mab +0 -7
  36. data/spec/markaby/rails/views/markaby/commented_out_template.mab +0 -1
  37. data/spec/markaby/rails/views/markaby/correct_template_values.mab +0 -5
  38. data/spec/markaby/rails/views/markaby/double_output.mab +0 -8
  39. data/spec/markaby/rails/views/markaby/form_for.mab +0 -2
  40. data/spec/markaby/rails/views/markaby/form_for_with_fields.mab +0 -3
  41. data/spec/markaby/rails/views/markaby/form_for_with_multiple_fields.mab +0 -4
  42. data/spec/markaby/rails/views/markaby/no_values_passed.mab +0 -3
  43. data/spec/markaby/rails/views/markaby/partial_parent.mab +0 -1
  44. data/spec/markaby/rails/views/markaby/partial_parent_with_locals.mab +0 -7
  45. data/spec/markaby/rails/views/markaby/render_erb_without_explicit_render_call.erb +0 -1
  46. data/spec/markaby/rails/views/markaby/render_explicit_but_empty_markaby_layout.mab +0 -0
  47. data/spec/markaby/rails/views/markaby/render_mab_without_explicit_render_call.mab +0 -3
  48. data/spec/markaby/rails/views/markaby/render_with_ivar.mab +0 -3
  49. data/spec/markaby/rails/views/markaby/renders_erb.rhtml +0 -1
  50. data/spec/markaby/rails/views/markaby/routes.mab +0 -1
  51. data/spec/markaby/rails/views/markaby/yielding.mab +0 -3
  52. data/spec/markaby/rails/views/markaby/yielding_content_for_with_block_helper.mab +0 -5
  53. data/spec/markaby/rails/views/markaby/yielding_two.mab +0 -7
  54. data/spec/markaby/rails/views/markaby/yielding_with_content_for.mab +0 -3
  55. data/spec/markaby/rails_spec.rb +0 -361
  56. data/spec/markaby/rails_version_spec.rb +0 -37
  57. data/spec/markaby/sinatra/app.rb +0 -49
  58. data/spec/markaby/sinatra/sinatra_spec.rb +0 -64
  59. data/spec/markaby/sinatra/views/helpers.mab +0 -1
  60. data/spec/markaby/sinatra/views/layout.mab +0 -7
  61. data/spec/markaby/sinatra/views/markaby_template.mab +0 -0
  62. data/spec/markaby/sinatra/views/scope_instance_variables.mab +0 -3
  63. data/spec/markaby/sinatra/views/simple_html.mab +0 -4
  64. data/spec/markaby/sinatra/views/variables.mab +0 -3
  65. data/spec/markaby/tilt/erb.erb +0 -1
  66. data/spec/markaby/tilt/locals.mab +0 -1
  67. data/spec/markaby/tilt/markaby.mab +0 -1
  68. data/spec/markaby/tilt/markaby_other_static.mab +0 -1
  69. data/spec/markaby/tilt/render_twice.mab +0 -1
  70. data/spec/markaby/tilt/scope.mab +0 -1
  71. data/spec/markaby/tilt/yielding.mab +0 -2
  72. data/spec/markaby/tilt_spec.rb +0 -75
  73. /data/{spec/spec.opts → .rspec} +0 -0
@@ -1,64 +0,0 @@
1
- require File.expand_path(File.dirname(__FILE__) + "/../../spec_helper")
2
- require File.expand_path(File.dirname(__FILE__) + "/app")
3
- require 'rack/test'
4
-
5
- describe "sinatra integration" do
6
- include Rack::Test::Methods
7
-
8
- def app
9
- @app ||= Sinatra::Application
10
- end
11
-
12
- it "should render an empty" do
13
- get '/empty_action'
14
- last_response.should be_ok
15
- end
16
-
17
- it "should render an empty markaby template" do
18
- get '/markaby_template'
19
- last_response.should be_ok
20
- last_response.body.should == ""
21
- end
22
-
23
- it "should render a template with html in it" do
24
- get '/simple_html'
25
- last_response.should be_ok
26
- last_response.body.should == "<ul><li>hi</li><li>there</li></ul>"
27
- end
28
-
29
- it "should be able to pass variables" do
30
- get '/variables'
31
- last_response.should be_ok
32
- last_response.body.should == '<p class="name">Scott Taylor</p>'
33
- end
34
-
35
- it "should be able to pass variables through locals" do
36
- get '/variables_with_locals'
37
- last_response.should be_ok
38
- last_response.body.should == '<p class="name">Scott Taylor</p>'
39
- end
40
-
41
- it "should have scope to instance variables" do
42
- get '/scope_instance_variables'
43
- last_response.should be_ok
44
- last_response.body.should == '<p class="name">Scott Taylor</p>'
45
- end
46
-
47
- it "should be able to use named templates" do
48
- get "/named_template"
49
- last_response.should be_ok
50
- last_response.body.should == '<div class="title">Hello World!</div>'
51
- end
52
-
53
- it "should be able to use a layout with :layout" do
54
- get '/layout'
55
- last_response.should be_ok
56
- last_response.body.should == '<html><div class="title">Hello World!</div></html>'
57
- end
58
-
59
- it "should be able to access helpers in a template" do
60
- get '/helpers'
61
- last_response.should be_ok
62
- last_response.body.should == "<li>bacon</li>"
63
- end
64
- end
@@ -1 +0,0 @@
1
- li chunky
@@ -1,7 +0,0 @@
1
- if @display_layout
2
- html do
3
- yield
4
- end
5
- else
6
- yield
7
- end
File without changes
@@ -1,3 +0,0 @@
1
- p :class => "name" do
2
- @name
3
- end
@@ -1,4 +0,0 @@
1
- ul do
2
- li "hi"
3
- li "there"
4
- end
@@ -1,3 +0,0 @@
1
- p :class => "name" do
2
- name
3
- end
@@ -1 +0,0 @@
1
- hello from erb!
@@ -1 +0,0 @@
1
- li foo
@@ -1 +0,0 @@
1
- text "hello from markaby!"
@@ -1 +0,0 @@
1
- text "_why?"
@@ -1 +0,0 @@
1
- text "foo"
@@ -1 +0,0 @@
1
- li foo
@@ -1,2 +0,0 @@
1
- text("Hey ")
2
- yield
@@ -1,75 +0,0 @@
1
- require File.expand_path(File.dirname(__FILE__) + "/../spec_helper")
2
-
3
- module Markaby
4
- describe Tilt, "templates" do
5
- before do
6
- @block = lambda do |t|
7
- File.read(File.dirname(__FILE__) + "/#{t.file}")
8
- end
9
- end
10
-
11
- it "should have the constant ::Tilt::Markaby after registration" do
12
- lambda {
13
- ::Tilt::MarkabyTemplate
14
- }.should_not raise_error
15
- end
16
-
17
- it "should be able to render an erb template" do
18
- tilt = ::Tilt::ERBTemplate.new("tilt/erb.erb", &@block)
19
- tilt.render.should == "hello from erb!"
20
- end
21
-
22
- it "should be able to render a markaby template with static html" do
23
- tilt = ::Tilt::MarkabyTemplate.new("tilt/markaby.mab", &@block)
24
- tilt.render.should == "hello from markaby!"
25
- end
26
-
27
- it "should use the contents of the template" do
28
- tilt = ::Tilt::MarkabyTemplate.new("tilt/markaby_other_static.mab", &@block)
29
- tilt.render.should == "_why?"
30
- end
31
-
32
- it "should render from a string (given as data)" do
33
- tilt = ::Tilt::MarkabyTemplate.new { "html do; end" }
34
- tilt.render.should == "<html></html>"
35
- end
36
-
37
- it "should evaluate a template file in the scope given" do
38
- scope = mock 'scope object', :foo => "bar"
39
-
40
- tilt = ::Tilt::MarkabyTemplate.new("tilt/scope.mab", &@block)
41
- tilt.render(scope).should == "<li>bar</li>"
42
- end
43
-
44
- it "should pass locals to the template" do
45
- tilt = ::Tilt::MarkabyTemplate.new("tilt/locals.mab", &@block)
46
- tilt.render(Object.new, { :foo => "bar" }).should == "<li>bar</li>"
47
- end
48
-
49
- it "should yield to the block given" do
50
- tilt = ::Tilt::MarkabyTemplate.new("tilt/yielding.mab", &@block)
51
- eval_scope = Markaby::Builder.new
52
-
53
- output = tilt.render(Object.new, {}) do
54
- text("Joe")
55
- end
56
-
57
- output.should == "Hey Joe"
58
- end
59
-
60
- it "should be able to render two templates in a row" do
61
- tilt = ::Tilt::MarkabyTemplate.new("tilt/render_twice.mab", &@block)
62
-
63
- tilt.render.should == "foo"
64
- tilt.render.should == "foo"
65
- end
66
-
67
- it "should retrieve a Tilt::MarkabyTemplate when calling Tilt['hello.mab']" do
68
- ::Tilt['./tilt/markaby.mab'].should == Markaby::Tilt::Template
69
- end
70
-
71
- it "should return a new instance of the implementation class (when calling Tilt.new)" do
72
- ::Tilt.new(File.dirname(__FILE__) + "/tilt/markaby.mab").should be_a_kind_of(Markaby::Tilt::Template)
73
- end
74
- end
75
- end
File without changes