Markaby 0.6.3 → 0.6.5
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG.rdoc +31 -0
- data/Markaby.gemspec +6 -2
- data/README.rdoc +3 -2
- data/Rakefile +36 -7
- data/VERSION +1 -1
- data/lib/markaby/builder.rb +2 -2
- data/lib/markaby/rails.rb +16 -13
- data/lib/markaby/rails/current.rb +7 -2
- data/lib/markaby/rails/deprecated.rb +3 -1
- data/lib/markaby/rails/rails_builder.rb +50 -0
- data/spec/markaby/builder_spec.rb +106 -30
- data/spec/markaby/rails/spec_helper.rb +1 -0
- data/spec/markaby/rails/views/markaby/form_for.mab +2 -0
- data/spec/markaby/rails/views/markaby/form_for_with_fields.mab +3 -0
- data/spec/markaby/rails/views/markaby/form_for_with_multiple_fields.mab +4 -0
- data/spec/markaby/rails_spec.rb +59 -0
- data/spec/markaby/rails_version_spec.rb +2 -2
- metadata +6 -2
data/CHANGELOG.rdoc
CHANGED
@@ -1,3 +1,34 @@
|
|
1
|
+
= 0.6.4
|
2
|
+
|
3
|
+
* Fixed a bug in which direct string values to Markaby::Builder wouldn't evaluate:
|
4
|
+
Markaby::Builder.new { 'foo' }.to_s #=> "foo"
|
5
|
+
|
6
|
+
* Fix critical bug with form_for, which was raising an error
|
7
|
+
* Introduce proxy object for form_for:
|
8
|
+
|
9
|
+
form_for :foo do |f|
|
10
|
+
f.text_field :bar
|
11
|
+
f.text_field :baz
|
12
|
+
end
|
13
|
+
|
14
|
+
* Remove support for rails 2.1.x series. We'll accept patches for them, if anyone cares enough.
|
15
|
+
|
16
|
+
== 0.6.2 / 0.6.3
|
17
|
+
|
18
|
+
* Add basic support for the Tilt templating engine (used with Sinatra):
|
19
|
+
|
20
|
+
require 'markaby'
|
21
|
+
require 'markaby/tilt'
|
22
|
+
|
23
|
+
== 0.6.1
|
24
|
+
|
25
|
+
* Support the following rails versions:
|
26
|
+
1.2.2, 1.2.3, 1.2.4, 1.2.5, 1.2.6, 2.1.0, 2.1.1, 2.1.2, 2.2.0,
|
27
|
+
2.2.1, 2.2.2, 2.2.3, 2.3.1, 2.3.2, 2.3.2.1, 2.3.3, 2.3.3.1, 2.3.4
|
28
|
+
* Only run rails tests when inside a rails plugins
|
29
|
+
* Run tests of the various versions of rails with garlic
|
30
|
+
* Start conversion to rspec. Use test/spec temporarily until conversion is done.
|
31
|
+
|
1
32
|
= 0.6
|
2
33
|
=== 23 August, 2009
|
3
34
|
|
data/Markaby.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{Markaby}
|
8
|
-
s.version = "0.6.
|
8
|
+
s.version = "0.6.5"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["_why", "Tim Fletcher", "John Barton", "spox", "smtlaissezfaire"]
|
12
|
-
s.date = %q{2009-10-
|
12
|
+
s.date = %q{2009-10-12}
|
13
13
|
s.description = %q{Tim Fletcher and _why's ruby driven HTML templating system}
|
14
14
|
s.email = %q{jrbarton@gmail.com}
|
15
15
|
s.extra_rdoc_files = [
|
@@ -32,6 +32,7 @@ Gem::Specification.new do |s|
|
|
32
32
|
"lib/markaby/rails.rb",
|
33
33
|
"lib/markaby/rails/current.rb",
|
34
34
|
"lib/markaby/rails/deprecated.rb",
|
35
|
+
"lib/markaby/rails/rails_builder.rb",
|
35
36
|
"lib/markaby/tags.rb",
|
36
37
|
"lib/markaby/tilt.rb",
|
37
38
|
"spec/markaby/builder_spec.rb",
|
@@ -45,6 +46,9 @@ Gem::Specification.new do |s|
|
|
45
46
|
"spec/markaby/rails/views/markaby/access_to_helpers.mab",
|
46
47
|
"spec/markaby/rails/views/markaby/broken.mab",
|
47
48
|
"spec/markaby/rails/views/markaby/correct_template_values.mab",
|
49
|
+
"spec/markaby/rails/views/markaby/form_for.mab",
|
50
|
+
"spec/markaby/rails/views/markaby/form_for_with_fields.mab",
|
51
|
+
"spec/markaby/rails/views/markaby/form_for_with_multiple_fields.mab",
|
48
52
|
"spec/markaby/rails/views/markaby/no_values_passed.mab",
|
49
53
|
"spec/markaby/rails/views/markaby/partial_parent.mab",
|
50
54
|
"spec/markaby/rails/views/markaby/partial_parent_with_locals.mab",
|
data/README.rdoc
CHANGED
@@ -24,8 +24,9 @@ Write Rails templates in pure Ruby. Example layout:
|
|
24
24
|
|
25
25
|
Markaby supports many versions of rails:
|
26
26
|
|
27
|
-
1.2.2, 1.2.3, 1.2.4, 1.2.5, 1.2.6, 2.
|
28
|
-
2.2.1, 2.2.2, 2.2.3, 2.3.1, 2.3.2, 2.3.2.1,
|
27
|
+
1.2.2, 1.2.3, 1.2.4, 1.2.5, 1.2.6, 2.2.0,
|
28
|
+
2.2.1, 2.2.2, 2.2.3, 2.3.1, 2.3.2, 2.3.2.1,
|
29
|
+
2.3.3, 2.3.3.1, 2.3.4
|
29
30
|
|
30
31
|
== Using Markaby as a Ruby class
|
31
32
|
|
data/Rakefile
CHANGED
@@ -1,7 +1,18 @@
|
|
1
1
|
require 'rake'
|
2
2
|
require 'spec/rake/spectask'
|
3
3
|
require 'rake/clean'
|
4
|
-
|
4
|
+
|
5
|
+
begin
|
6
|
+
require 'hanna/rdoctask'
|
7
|
+
|
8
|
+
Rake::RDocTask.new do |rdoc|
|
9
|
+
rdoc.rdoc_dir = 'doc/rdoc'
|
10
|
+
rdoc.options << '--line-numbers'
|
11
|
+
rdoc.rdoc_files.add(['README.rdoc', 'CHANGELOG.rdoc', 'lib/**/*.rb'])
|
12
|
+
end
|
13
|
+
rescue LoadError
|
14
|
+
puts "Could not load hanna-rdoc. Please install with mislav-hanna package"
|
15
|
+
end
|
5
16
|
|
6
17
|
task :default => :spec
|
7
18
|
|
@@ -11,12 +22,6 @@ Spec::Rake::SpecTask.new do |t|
|
|
11
22
|
t.spec_opts = ["--color"]
|
12
23
|
end
|
13
24
|
|
14
|
-
Rake::RDocTask.new do |rdoc|
|
15
|
-
rdoc.rdoc_dir = 'doc/rdoc'
|
16
|
-
rdoc.options << '--line-numbers'
|
17
|
-
rdoc.rdoc_files.add(['README.rdoc', 'CHANGELOG.rdoc', 'lib/**/*.rb'])
|
18
|
-
end
|
19
|
-
|
20
25
|
begin
|
21
26
|
require 'jeweler'
|
22
27
|
|
@@ -46,3 +51,27 @@ desc "Start a Markaby-aware IRB session"
|
|
46
51
|
task :irb do
|
47
52
|
sh 'irb -I lib -r markaby -r markaby/kernel_method'
|
48
53
|
end
|
54
|
+
|
55
|
+
namespace :gemspec do
|
56
|
+
task :commit do
|
57
|
+
sh "git add ."
|
58
|
+
sh "git commit -m 'Update gemspec'"
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
namespace :release do
|
63
|
+
task :patch => [:spec, "version:bump:patch", :update_gemspec, :rerdoc, :tag_release, :build, :push_tags]
|
64
|
+
|
65
|
+
task :update_gemspec => ["gemspec:generate", "gemspec:validate", "gemspec:commit"]
|
66
|
+
task :tag_release do
|
67
|
+
require File.dirname(__FILE__) + "/lib/markaby"
|
68
|
+
version = "v#{Markaby::VERSION}"
|
69
|
+
sh "git tag #{version}"
|
70
|
+
end
|
71
|
+
|
72
|
+
task :push_tags do
|
73
|
+
sh "git push --tags"
|
74
|
+
end
|
75
|
+
end
|
76
|
+
|
77
|
+
task :release => "release:patch"
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.6.
|
1
|
+
0.6.5
|
data/lib/markaby/builder.rb
CHANGED
@@ -91,7 +91,7 @@ module Markaby
|
|
91
91
|
|
92
92
|
@builder = XmlMarkup.new(:indent => @indent, :target => @streams.last)
|
93
93
|
|
94
|
-
|
94
|
+
text(capture(&block)) if block
|
95
95
|
end
|
96
96
|
|
97
97
|
def helper=(helper)
|
@@ -132,7 +132,7 @@ module Markaby
|
|
132
132
|
# stream for the builder object, running the block and passing back its stream as a string.
|
133
133
|
#
|
134
134
|
# >> Markaby::Builder.new.capture { h1 "TEST"; h2 "CAPTURE ME" }
|
135
|
-
# => "<h1>
|
135
|
+
# => "<h1>TEST</h1><h2>CAPTURE ME</h2>"
|
136
136
|
#
|
137
137
|
def capture(&block)
|
138
138
|
@streams.push(@builder.target = [])
|
data/lib/markaby/rails.rb
CHANGED
@@ -1,28 +1,31 @@
|
|
1
1
|
module Markaby
|
2
2
|
module Rails
|
3
|
+
UNSUPPORTED_RAILS_VERSIONS = [
|
4
|
+
"2.0.0",
|
5
|
+
"2.0.1",
|
6
|
+
"2.0.2",
|
7
|
+
"2.0.3",
|
8
|
+
"2.0.4",
|
9
|
+
"2.0.5",
|
10
|
+
"2.1.0",
|
11
|
+
"2.1.1",
|
12
|
+
"2.1.2",
|
13
|
+
"2.3.0"
|
14
|
+
]
|
15
|
+
|
3
16
|
DEPRECATED_RAILS_VERSIONS = [
|
4
17
|
"1.2.2",
|
5
18
|
"1.2.3",
|
6
19
|
"1.2.4",
|
7
20
|
"1.2.5",
|
8
|
-
"1.2.6"
|
21
|
+
"1.2.6"
|
9
22
|
]
|
10
|
-
|
23
|
+
|
11
24
|
FULLY_SUPPORTED_RAILS_VERSIONS = [
|
12
|
-
# "2.0.0",
|
13
|
-
# "2.0.1",
|
14
|
-
# "2.0.2",
|
15
|
-
# "2.0.3",
|
16
|
-
# "2.0.4",
|
17
|
-
# "2.0.5",
|
18
|
-
"2.1.0",
|
19
|
-
"2.1.1",
|
20
|
-
"2.1.2",
|
21
25
|
"2.2.0",
|
22
26
|
"2.2.1",
|
23
27
|
"2.2.2",
|
24
28
|
"2.2.3",
|
25
|
-
# "2.3.0",
|
26
29
|
"2.3.1",
|
27
30
|
"2.3.2",
|
28
31
|
"2.3.2.1",
|
@@ -49,7 +52,7 @@ module Markaby
|
|
49
52
|
end
|
50
53
|
|
51
54
|
def check_rails_version
|
52
|
-
|
55
|
+
if UNSUPPORTED_RAILS_VERSIONS.include?(detected_rails_version)
|
53
56
|
error_message = "Cannot load markaby under rails version #{detected_rails_version}. "
|
54
57
|
error_message << "See Markaby::Rails::SUPPORTED_RAILS_VERSIONS for exactly that, or redefine this constant."
|
55
58
|
raise LoadError, error_message
|
@@ -1,6 +1,10 @@
|
|
1
|
+
require 'markaby/rails/rails_builder'
|
2
|
+
|
1
3
|
module Markaby
|
2
4
|
module Rails
|
3
5
|
class TemplateHandler < ::ActionView::TemplateHandler
|
6
|
+
include ActionView::TemplateHandlers::Compilable
|
7
|
+
|
4
8
|
def compile(template, local_assigns={})
|
5
9
|
<<-CODE
|
6
10
|
handler = Markaby::Rails::TemplateHandler.new
|
@@ -10,8 +14,9 @@ module Markaby
|
|
10
14
|
end
|
11
15
|
|
12
16
|
def render(template, local_assigns = (template.respond_to?(:locals) ? template.locals : {}))
|
13
|
-
builder =
|
14
|
-
|
17
|
+
builder = RailsBuilder.new(instance_variables.merge(local_assigns), @view)
|
18
|
+
@view.output_buffer = builder
|
19
|
+
|
15
20
|
template.is_a?(Proc) ?
|
16
21
|
builder.instance_eval(&template) :
|
17
22
|
builder.instance_eval(template.source)
|
@@ -1,3 +1,5 @@
|
|
1
|
+
require 'markaby/rails/rails_builder'
|
2
|
+
|
1
3
|
module ActionView # :nodoc:
|
2
4
|
class Base # :nodoc:
|
3
5
|
def render_template(template_extension, template, file_path = nil, local_assigns = {})
|
@@ -64,7 +66,7 @@ module Markaby
|
|
64
66
|
end
|
65
67
|
end
|
66
68
|
|
67
|
-
class Builder <
|
69
|
+
class Builder < RailsBuilder # :nodoc:
|
68
70
|
def initialize(*args, &block)
|
69
71
|
super *args, &block
|
70
72
|
|
@@ -0,0 +1,50 @@
|
|
1
|
+
module Markaby
|
2
|
+
module Rails
|
3
|
+
class RailsBuilder < Markaby::Builder
|
4
|
+
def form_for(*args, &block)
|
5
|
+
@template.form_for(*args) do |__form_for_variable|
|
6
|
+
yield(FormHelperProxy.new(self, __form_for_variable))
|
7
|
+
end
|
8
|
+
end
|
9
|
+
|
10
|
+
# This is used for the block variable given to form_for. Typically, an erb template looks as so:
|
11
|
+
#
|
12
|
+
# <% form_for :foo do |f|
|
13
|
+
# <%= f.text_field :bar %>
|
14
|
+
# <% end %>
|
15
|
+
#
|
16
|
+
# form_for adds the form tag to the input stream, and assumes that later the user will append
|
17
|
+
# the <input> tag to the input stream himself (in erb, this is done with the <%= %> tags).
|
18
|
+
#
|
19
|
+
# We could do the following in Markaby:
|
20
|
+
#
|
21
|
+
# form_for :foo do |f|
|
22
|
+
# text f.text_field(:bar)
|
23
|
+
# end
|
24
|
+
#
|
25
|
+
# But this is ugly. This is prettier:
|
26
|
+
#
|
27
|
+
# form_for :foo do |f|
|
28
|
+
# f.text_field :bar
|
29
|
+
# end
|
30
|
+
class FormHelperProxy
|
31
|
+
def initialize(builder, proxied_object)
|
32
|
+
@builder = builder
|
33
|
+
@proxied_object = proxied_object
|
34
|
+
end
|
35
|
+
|
36
|
+
def respond_to?(sym, include_private = false)
|
37
|
+
@proxied_object.respond_to?(sym, include_private) || super
|
38
|
+
end
|
39
|
+
|
40
|
+
private
|
41
|
+
|
42
|
+
def method_missing(sym, *args, &block)
|
43
|
+
result = @proxied_object.__send__(sym, *args, &block)
|
44
|
+
@builder.text(result) if result.is_a?(String)
|
45
|
+
result
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
@@ -1,40 +1,116 @@
|
|
1
1
|
require File.expand_path(File.dirname(__FILE__) + "/../spec_helper")
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
3
|
+
module Markaby
|
4
|
+
describe Builder do
|
5
|
+
before do
|
6
|
+
Markaby::Builder.restore_defaults!
|
7
|
+
end
|
7
8
|
|
8
|
-
|
9
|
-
|
10
|
-
|
9
|
+
after do
|
10
|
+
Markaby::Builder.restore_defaults!
|
11
|
+
end
|
11
12
|
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
# setting options
|
17
|
-
def test_should_be_able_to_restore_defaults_after_setting
|
18
|
-
Markaby::Builder.set :indent, 2
|
19
|
-
Markaby::Builder.restore_defaults!
|
13
|
+
it "should have method missing as a private method" do
|
14
|
+
Markaby::Builder.private_instance_methods.should include("method_missing")
|
15
|
+
end
|
20
16
|
|
21
|
-
|
22
|
-
|
17
|
+
describe "setting options" do
|
18
|
+
it "should be able to restore defaults after setting" do
|
19
|
+
Markaby::Builder.set :indent, 2
|
20
|
+
Markaby::Builder.restore_defaults!
|
23
21
|
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
def test_internal_helpers_ivar_should_not_be_overwritten_by_assigns
|
31
|
-
helper = Class.new do
|
32
|
-
def some_method
|
33
|
-
"a value"
|
22
|
+
Markaby::Builder.get(:indent).should == 0
|
23
|
+
end
|
24
|
+
|
25
|
+
it "should be able to set global options" do
|
26
|
+
Markaby::Builder.set :indent, 2
|
27
|
+
Markaby::Builder.get(:indent).should == 2
|
34
28
|
end
|
35
|
-
end
|
29
|
+
end
|
36
30
|
|
37
|
-
|
38
|
-
|
31
|
+
describe "hidden internal variables" do
|
32
|
+
# internal clobbering by passed in assigns
|
33
|
+
it "should not overwrite internal helpers ivar when assigning a :helpers key" do
|
34
|
+
helper = Class.new do
|
35
|
+
def some_method
|
36
|
+
"a value"
|
37
|
+
end
|
38
|
+
end.new
|
39
|
+
|
40
|
+
builder = Markaby::Builder.new({:helpers => nil}, helper)
|
41
|
+
builder.some_method.should == "a value"
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
describe "evaluating blocks" do
|
46
|
+
it "should evaluate a pure-string block (without requiring a call to the text method)" do
|
47
|
+
b = Builder.new do
|
48
|
+
"foo"
|
49
|
+
end
|
50
|
+
|
51
|
+
b.to_s.should == "foo"
|
52
|
+
end
|
53
|
+
|
54
|
+
it "should only evaluate the last argument in a pure-string block" do
|
55
|
+
b = Builder.new do
|
56
|
+
"foo"
|
57
|
+
"bar"
|
58
|
+
end
|
59
|
+
|
60
|
+
b.to_s.should == "bar"
|
61
|
+
end
|
62
|
+
|
63
|
+
it "should evaluate pure-strings inside an tag" do
|
64
|
+
b = Builder.new do
|
65
|
+
h1 do
|
66
|
+
"foo"
|
67
|
+
end
|
68
|
+
end
|
69
|
+
|
70
|
+
b.to_s.should == "<h1>foo</h1>"
|
71
|
+
end
|
72
|
+
|
73
|
+
it "should ignore a pure string in the block, even if comes last, if there has been any markup whatsoever" do
|
74
|
+
b = Builder.new do
|
75
|
+
h1
|
76
|
+
"foo"
|
77
|
+
end
|
78
|
+
|
79
|
+
b.to_s.should == "<h1/>"
|
80
|
+
end
|
81
|
+
end
|
82
|
+
|
83
|
+
describe "capture" do
|
84
|
+
before do
|
85
|
+
@builder = Builder.new
|
86
|
+
end
|
87
|
+
|
88
|
+
it "should return the string captured" do
|
89
|
+
out = @builder.capture do
|
90
|
+
h1 "TEST"
|
91
|
+
h2 "CAPTURE ME"
|
92
|
+
end
|
93
|
+
|
94
|
+
out.should == "<h1>TEST</h1><h2>CAPTURE ME</h2>"
|
95
|
+
end
|
96
|
+
|
97
|
+
it "should not change the output buffer" do
|
98
|
+
lambda {
|
99
|
+
@builder.capture do
|
100
|
+
h1 "FOO!"
|
101
|
+
end
|
102
|
+
}.should_not change { @builder.to_s }
|
103
|
+
end
|
104
|
+
|
105
|
+
it "should be able to capture inside a capture" do
|
106
|
+
out = @builder.capture do
|
107
|
+
capture do
|
108
|
+
h1 "foo"
|
109
|
+
end
|
110
|
+
end
|
111
|
+
|
112
|
+
out.should == "<h1>foo</h1>"
|
113
|
+
end
|
114
|
+
end
|
39
115
|
end
|
40
116
|
end
|
data/spec/markaby/rails_spec.rb
CHANGED
@@ -84,6 +84,34 @@ if RUNNING_RAILS
|
|
84
84
|
def render_which_raises_error
|
85
85
|
render :template => "markaby/broken"
|
86
86
|
end
|
87
|
+
|
88
|
+
def renders_form_for
|
89
|
+
@obj = Object.new
|
90
|
+
render :template => "markaby/form_for"
|
91
|
+
end
|
92
|
+
|
93
|
+
def render_form_for_with_fields
|
94
|
+
@obj = Object.new
|
95
|
+
def @obj.foo
|
96
|
+
"bar"
|
97
|
+
end
|
98
|
+
|
99
|
+
render :template => "markaby/form_for_with_fields"
|
100
|
+
end
|
101
|
+
|
102
|
+
def render_form_for_with_multiple_fields
|
103
|
+
@obj = Object.new
|
104
|
+
|
105
|
+
def @obj.foo
|
106
|
+
"bar"
|
107
|
+
end
|
108
|
+
|
109
|
+
def @obj.baz
|
110
|
+
"quxx"
|
111
|
+
end
|
112
|
+
|
113
|
+
render :template => "markaby/form_for_with_multiple_fields"
|
114
|
+
end
|
87
115
|
end
|
88
116
|
|
89
117
|
class MarkabyOnRailsTest < ActionController::TestCase
|
@@ -180,6 +208,37 @@ if RUNNING_RAILS
|
|
180
208
|
assert %r(undefined local variable or method `supercalifragilisticexpialidocious' for #<Markaby::.*Builder.*) =~
|
181
209
|
@controller.last_exception.message.to_s
|
182
210
|
end
|
211
|
+
|
212
|
+
def test_renders_form_for_properly
|
213
|
+
get :renders_form_for
|
214
|
+
|
215
|
+
assert_response :success
|
216
|
+
|
217
|
+
assert %r(<form.*></form>) =~ @response.body
|
218
|
+
end
|
219
|
+
|
220
|
+
def test_renders_form_for_with_fields_for
|
221
|
+
get :render_form_for_with_fields
|
222
|
+
|
223
|
+
assert_response :success
|
224
|
+
|
225
|
+
assert_equal "<form action=\"/markaby/render_form_for_with_fields\" method=\"post\"><input id=\"foo_foo\" name=\"foo[foo]\" size=\"30\" type=\"text\" /></form>",
|
226
|
+
@response.body
|
227
|
+
end
|
228
|
+
|
229
|
+
def test_renders_form_for_with_multiple_fields
|
230
|
+
get :render_form_for_with_multiple_fields
|
231
|
+
|
232
|
+
assert_response :success
|
233
|
+
|
234
|
+
expected_output = "<form action=\"/markaby/render_form_for_with_multiple_fields\" method=\"post\">"
|
235
|
+
expected_output << "<input id=\"foo_foo\" name=\"foo[foo]\" size=\"30\" type=\"text\" />"
|
236
|
+
expected_output << "<input id=\"foo_baz\" name=\"foo[baz]\" size=\"30\" type=\"text\" />"
|
237
|
+
expected_output << "</form>"
|
238
|
+
|
239
|
+
assert_equal expected_output,
|
240
|
+
@response.body
|
241
|
+
end
|
183
242
|
end
|
184
243
|
|
185
244
|
describe "rails version" do
|
@@ -6,7 +6,7 @@ unless RUNNING_RAILS
|
|
6
6
|
describe "when rails is loaded, but is not a supported version" do
|
7
7
|
module MockRails
|
8
8
|
module VERSION
|
9
|
-
STRING =
|
9
|
+
STRING = ::Markaby::Rails::UNSUPPORTED_RAILS_VERSIONS.first
|
10
10
|
end
|
11
11
|
end
|
12
12
|
|
@@ -31,7 +31,7 @@ unless RUNNING_RAILS
|
|
31
31
|
it "should raise" do
|
32
32
|
lambda {
|
33
33
|
::Markaby::Rails.load
|
34
|
-
}.should raise_error(LoadError, "Cannot load markaby under rails version
|
34
|
+
}.should raise_error(LoadError, "Cannot load markaby under rails version 2.0.0. See Markaby::Rails::SUPPORTED_RAILS_VERSIONS for exactly that, or redefine this constant.")
|
35
35
|
end
|
36
36
|
end
|
37
37
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: Markaby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- _why
|
@@ -13,7 +13,7 @@ autorequire:
|
|
13
13
|
bindir: bin
|
14
14
|
cert_chain: []
|
15
15
|
|
16
|
-
date: 2009-10-
|
16
|
+
date: 2009-10-12 00:00:00 -04:00
|
17
17
|
default_executable:
|
18
18
|
dependencies:
|
19
19
|
- !ruby/object:Gem::Dependency
|
@@ -51,6 +51,7 @@ files:
|
|
51
51
|
- lib/markaby/rails.rb
|
52
52
|
- lib/markaby/rails/current.rb
|
53
53
|
- lib/markaby/rails/deprecated.rb
|
54
|
+
- lib/markaby/rails/rails_builder.rb
|
54
55
|
- lib/markaby/tags.rb
|
55
56
|
- lib/markaby/tilt.rb
|
56
57
|
- spec/markaby/builder_spec.rb
|
@@ -64,6 +65,9 @@ files:
|
|
64
65
|
- spec/markaby/rails/views/markaby/access_to_helpers.mab
|
65
66
|
- spec/markaby/rails/views/markaby/broken.mab
|
66
67
|
- spec/markaby/rails/views/markaby/correct_template_values.mab
|
68
|
+
- spec/markaby/rails/views/markaby/form_for.mab
|
69
|
+
- spec/markaby/rails/views/markaby/form_for_with_fields.mab
|
70
|
+
- spec/markaby/rails/views/markaby/form_for_with_multiple_fields.mab
|
67
71
|
- spec/markaby/rails/views/markaby/no_values_passed.mab
|
68
72
|
- spec/markaby/rails/views/markaby/partial_parent.mab
|
69
73
|
- spec/markaby/rails/views/markaby/partial_parent_with_locals.mab
|