summaryrefslogtreecommitdiff
path: root/spec/ruby/library
diff options
context:
space:
mode:
Diffstat (limited to 'spec/ruby/library')
-rw-r--r--spec/ruby/library/erb/defmethod/def_erb_method_spec.rb6
-rw-r--r--spec/ruby/library/erb/new_spec.rb69
2 files changed, 62 insertions, 13 deletions
diff --git a/spec/ruby/library/erb/defmethod/def_erb_method_spec.rb b/spec/ruby/library/erb/defmethod/def_erb_method_spec.rb
index e1eca2fbef..6c465936c1 100644
--- a/spec/ruby/library/erb/defmethod/def_erb_method_spec.rb
+++ b/spec/ruby/library/erb/defmethod/def_erb_method_spec.rb
@@ -50,7 +50,11 @@ END
MY_INPUT4_FOR_ERB = input
class MyClass4ForErb
extend ERB::DefMethod
- erb = ERB.new(MY_INPUT4_FOR_ERB, nil, '<>')
+ if RUBY_VERSION >= '2.6'
+ erb = ERB.new(MY_INPUT4_FOR_ERB, trim_mode: '<>')
+ else
+ erb = ERB.new(MY_INPUT4_FOR_ERB, nil, '<>')
+ end
def_erb_method('render()', erb)
def initialize(items)
@items = items
diff --git a/spec/ruby/library/erb/new_spec.rb b/spec/ruby/library/erb/new_spec.rb
index f141f1c00e..156873a598 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