summaryrefslogtreecommitdiff
path: root/spec/ruby/library/erb/new_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/ruby/library/erb/new_spec.rb')
-rw-r--r--spec/ruby/library/erb/new_spec.rb69
1 files changed, 57 insertions, 12 deletions
diff --git a/spec/ruby/library/erb/new_spec.rb b/spec/ruby/library/erb/new_spec.rb
index f141f1c..156873a 100644
--- a/spec/ruby/library/erb/new_spec.rb
+++ b/spec/ruby/library/erb/new_spec.rb
@@ -31,21 +31,33 @@ END
it "compiles eRuby script into ruby code when trim mode is 0 or not specified" do
expected = "<ul>\n\n\n\n<li>1</li>\n\n\n\n<li>2</li>\n\n\n\n<li>3</li>\n\n\n</ul>\n"
[0, '', nil].each do |trim_mode|
- ERB.new(@eruby_str, nil, trim_mode).result.should == expected
+ if RUBY_VERSION >= '2.6'
+ ERB.new(@eruby_str, trim_mode: trim_mode).result.should == expected
+ else
+ ERB.new(@eruby_str, nil, trim_mode).result.should == expected
+ end
end
end
it "removes '\n' when trim_mode is 1 or '>'" do
expected = "<ul>\n<li>1</li>\n<li>2</li>\n<li>3</li>\n</ul>\n"
[1, '>'].each do |trim_mode|
- ERB.new(@eruby_str, nil, trim_mode).result.should == expected
+ if RUBY_VERSION >= '2.6'
+ ERB.new(@eruby_str, trim_mode: trim_mode).result.should == expected
+ else
+ ERB.new(@eruby_str, nil, trim_mode).result.should == expected
+ end
end
end
it "removes spaces at beginning of line and '\n' when trim_mode is 2 or '<>'" do
expected = "<ul>\n<li>1</li>\n<li>2</li>\n<li>3</li>\n</ul>\n"
[2, '<>'].each do |trim_mode|
- ERB.new(@eruby_str, nil, trim_mode).result.should == expected
+ if RUBY_VERSION >= '2.6'
+ ERB.new(@eruby_str, trim_mode: trim_mode).result.should == expected
+ else
+ ERB.new(@eruby_str, nil, trim_mode).result.should == expected
+ end
end
end
@@ -61,7 +73,11 @@ END
</ul>
END
- ERB.new(input, nil, '-').result.should == expected
+ if RUBY_VERSION >= '2.6'
+ ERB.new(input, trim_mode: '-').result.should == expected
+ else
+ ERB.new(input, nil, '-').result.should == expected
+ end
end
@@ -75,23 +91,39 @@ END
END
lambda {
- ERB.new(input, nil, '-').result
+ if RUBY_VERSION >= '2.6'
+ ERB.new(input, trim_mode: '-').result
+ else
+ ERB.new(input, nil, '-').result
+ end
}.should raise_error(SyntaxError)
end
it "regards lines starting with '%' as '<% ... %>' when trim_mode is '%'" do
expected = "<ul>\n <li>1\n \n <li>2\n \n <li>3\n \n\n</ul>\n%%\n"
- ERB.new(@eruby_str2, nil, "%").result.should == expected
+ if RUBY_VERSION >= '2.6'
+ ERB.new(@eruby_str2, trim_mode: "%").result.should == expected
+ else
+ ERB.new(@eruby_str2, nil, "%").result.should == expected
+ end
end
it "regards lines starting with '%' as '<% ... %>' and remove \"\\n\" when trim_mode is '%>'" do
expected = "<ul>\n <li>1 <li>2 <li>3 </ul>\n%%\n"
- ERB.new(@eruby_str2, nil, '%>').result.should == expected
+ if RUBY_VERSION >= '2.6'
+ ERB.new(@eruby_str2, trim_mode: '%>').result.should == expected
+ else
+ ERB.new(@eruby_str2, nil, '%>').result.should == expected
+ end
end
it "regard lines starting with '%' as '<% ... %>' and remove \"\\n\" when trim_mode is '%<>'" do
expected = "<ul>\n <li>1\n \n <li>2\n \n <li>3\n \n</ul>\n%%\n"
- ERB.new(@eruby_str2, nil, '%<>').result.should == expected
+ if RUBY_VERSION >= '2.6'
+ ERB.new(@eruby_str2, trim_mode: '%<>').result.should == expected
+ else
+ ERB.new(@eruby_str2, nil, '%<>').result.should == expected
+ end
end
@@ -106,13 +138,22 @@ END
%%%
END
- ERB.new(input, nil, '%-').result.should == expected
+ if RUBY_VERSION >= '2.6'
+ ERB.new(input, trim_mode: '%-').result.should == expected
+ else
+ ERB.new(input, nil, '%-').result.should == expected
+ end
end
it "changes '_erbout' variable name in the produced source" do
input = @eruby_str
- match_erbout = ERB.new(input, nil, nil).src
- match_buf = ERB.new(input, nil, nil, 'buf').src
+ if RUBY_VERSION >= '2.6'
+ match_erbout = ERB.new(input, trim_mode: nil).src
+ match_buf = ERB.new(input, trim_mode: nil, eoutvar: 'buf').src
+ else
+ match_erbout = ERB.new(input, nil, nil).src
+ match_buf = ERB.new(input, nil, nil, 'buf').src
+ end
match_erbout.gsub("_erbout", "buf").should == match_buf
end
@@ -124,7 +165,11 @@ END
<%# end %>
END
ERB.new(input).result.should == "\n<b></b>\n\n"
- ERB.new(input, nil, '<>').result.should == "<b></b>\n"
+ if RUBY_VERSION >= '2.6'
+ ERB.new(input, trim_mode: '<>').result.should == "<b></b>\n"
+ else
+ ERB.new(input, nil, '<>').result.should == "<b></b>\n"
+ end
end
it "forget local variables defined previous one" do