From 81a56bce3a41896310bd1bed733b894b0c094979 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADt=20Ondruch?= Date: Tue, 5 Mar 2013 10:02:31 +0100 Subject: [PATCH 01/13] Fix embedded YAML to be compatible with Psych. --- test/test-engines.rb | 32 +++++++++++++++++++++----------- 1 file changed, 21 insertions(+), 11 deletions(-) diff --git a/test/test-engines.rb b/test/test-engines.rb index 8f0705a..a183231 100644 --- a/test/test-engines.rb +++ b/test/test-engines.rb @@ -71,7 +71,8 @@ def _test() - name: ruby2_options lang: ruby class: Eruby - options: { :bufvar: '@_out_buf' } + options: + :bufvar: '@_out_buf' input: | <% for item in @items %> @@ -137,7 +138,9 @@ def _test() - name: c1 lang: c class: Ec - options: { :filename: foo.html, :indent: ' ' } + options: + :filename: foo.html + :indent: ' ' input: |4
@@ -167,7 +170,9 @@ def _test() - name: cpp1 lang: cpp class: Ecpp - options: { :filename: foo.html, :indent: ' ' } + options: + :filename: foo.html + :indent: ' ' input: |4
@@ -197,7 +202,10 @@ def _test() - name: java1 lang: java class: Ejava - options: { :buf: _buf, :bufclass: StringBuilder, :indent: ' ' } + options: + :buf: _buf, + :bufclass: StringBuilder + :indent: ' ' input: |
@@ -220,19 +228,19 @@ def _test() expected: |4 StringBuilder _buf = new StringBuilder(); _buf.append("
\n" + " \n"); - + int i = 0; for (Iterator it = list.iterator(); it.hasNext(); ) { String s = (String)it.next(); i++; - + _buf.append(" \n" + " \n" + " \n" + " \n"); - + } - + _buf.append(" \n" + "
"); _buf.append(i); _buf.append(""); _buf.append(escape(s)); _buf.append("
\n"); System.err.println("*** debug: i="+(i)); _buf.append("\n"); @@ -242,7 +250,7 @@ def _test() lang: scheme class: Escheme options: - input: &scheme1_input| + input: &scheme1_input | <% (let ((i 0)) %> @@ -290,7 +298,8 @@ def _test() - name: scheme2 lang: scheme class: Escheme - options: { :func: 'display' } + options: + :func: 'display' input: *scheme1_input expected: |4 (let ((i 0)) @@ -401,7 +410,8 @@ def _test() - name: javascript2 lang: javascript class: Ejavascript - options: { :docwrite: false } + options: + :docwrite: false input: *javascript_input expected: |4 var _buf = []; From bbf33e57251d353ffe4789c7f4e445305b707d12 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADt=20Ondruch?= Date: Tue, 5 Mar 2013 10:03:23 +0100 Subject: [PATCH 02/13] Fix embedded YAML to be compatible with Psych. --- test/test-erubis.rb | 34 ++++++++++++++++++++-------------- 1 file changed, 20 insertions(+), 14 deletions(-) diff --git a/test/test-erubis.rb b/test/test-erubis.rb index ad00e5e..89e94f7 100644 --- a/test/test-erubis.rb +++ b/test/test-erubis.rb @@ -220,13 +220,13 @@ def test_evaluate_creates_proc __END__ - name: basic1 - input: &basic1_input| + input: &basic1_input | - src: &basic1_src| + src: &basic1_src | _buf = ''; _buf << ' '; _buf.to_s - output: &basic1_output| + output: &basic1_output |
<% for item in list %> @@ -677,7 +680,7 @@ def test_evaluate_creates_proc - name: optimized4 desc: single quotation and backslash class: OptimizedEruby - input: &optimized4_input| + input: &optimized4_input | a = "'" b = "\"" c = '\'' @@ -751,14 +754,14 @@ def test_evaluate_creates_proc - name: pi1 class: PI::Eruby testopt: evaluate - input: &input_pi1| + input: &input_pi1 | - src: &src_pi1| + src: &src_pi1 | _buf = ''; _buf << ' '; _buf.to_s - output: &output_pi1| + output: &output_pi1 |
! for item in list From f993710234852a713a351fcd06ca027b1b46d809 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADt=20Ondruch?= Date: Tue, 5 Mar 2013 10:06:30 +0100 Subject: [PATCH 04/13] Add support for Ruby 2.0.0 error messages. --- test/test-main.rb | 13 +++++++++++++ test/testutil.rb | 4 ++++ 2 files changed, 17 insertions(+) diff --git a/test/test-main.rb b/test/test-main.rb index 0e63229..e4d6c2a 100644 --- a/test/test-main.rb +++ b/test/test-main.rb @@ -272,6 +272,19 @@ def test_syntax2 # -z (syntax error) END errmsgs << <<'END' 7: syntax error, unexpected $end, expecting keyword_end +END + elsif ruby20? + errmsgs << <<'END' +3: syntax error, unexpected ']', expecting ')' + _buf << '
  • '; _buf << ( item[:name]] ).to_s; _buf << '
  • + ^ +-:4: syntax error, unexpected keyword_end, expecting ')' +'; end + ^ +-:7: syntax error, unexpected end-of-input, expecting ')' +END + errmsgs << <<'END' +7: syntax error, unexpected end-of-input, expecting keyword_end END elsif rubinius? errmsgs << <<'END' diff --git a/test/testutil.rb b/test/testutil.rb index e5293a5..59c3779 100644 --- a/test/testutil.rb +++ b/test/testutil.rb @@ -17,6 +17,10 @@ def ruby19? # :nodoc: RUBY_VERSION =~ /\A1.9/ end +def ruby20? # :nodoc: + RUBY_VERSION =~ /\A2.0/ +end + def rubinius? # :nodoc: defined?(RUBY_ENGINE) && RUBY_ENGINE == "rbx" end From 99d0db2f38d7a4b9cf782e2e4a73bde0d73277e9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADt=20Ondruch?= Date: Tue, 5 Mar 2013 10:07:02 +0100 Subject: [PATCH 05/13] Add support for Ruby 2.0.0. --- test/test-users-guide.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/test-users-guide.rb b/test/test-users-guide.rb index 2687a83..b89706b 100644 --- a/test/test-users-guide.rb +++ b/test/test-users-guide.rb @@ -28,7 +28,7 @@ def _test s =~ /\A\$ (.*?)\n/ command = $1 expected = $' - if ruby19? + if ruby19? || ruby20? case @name when 'test_main_program1_result' expected.sub!('["eruby", "items", "x", "_buf"]', '[:_buf, :eruby, :items, :x]') From 4a986d3a8f3cc4bfeacf1c1def3c6375c4866dfe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADt=20Ondruch?= Date: Mon, 23 Jun 2014 14:25:16 +0200 Subject: [PATCH 06/13] Add support for Ruby 2.1. --- test/test-main.rb | 2 +- test/test-users-guide.rb | 2 +- test/testutil.rb | 4 ++++ 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/test/test-main.rb b/test/test-main.rb index e4d6c2a..9dbe12e 100644 --- a/test/test-main.rb +++ b/test/test-main.rb @@ -273,7 +273,7 @@ def test_syntax2 # -z (syntax error) errmsgs << <<'END' 7: syntax error, unexpected $end, expecting keyword_end END - elsif ruby20? + elsif ruby20? || ruby21? errmsgs << <<'END' 3: syntax error, unexpected ']', expecting ')' _buf << '
  • '; _buf << ( item[:name]] ).to_s; _buf << '
  • diff --git a/test/test-users-guide.rb b/test/test-users-guide.rb index b89706b..fee5435 100644 --- a/test/test-users-guide.rb +++ b/test/test-users-guide.rb @@ -28,7 +28,7 @@ def _test s =~ /\A\$ (.*?)\n/ command = $1 expected = $' - if ruby19? || ruby20? + if ruby19? || ruby20? || ruby21? case @name when 'test_main_program1_result' expected.sub!('["eruby", "items", "x", "_buf"]', '[:_buf, :eruby, :items, :x]') diff --git a/test/testutil.rb b/test/testutil.rb index 59c3779..1b841c3 100644 --- a/test/testutil.rb +++ b/test/testutil.rb @@ -21,6 +21,10 @@ def ruby20? # :nodoc: RUBY_VERSION =~ /\A2.0/ end +def ruby21? # :nodoc: + RUBY_VERSION =~ /\A2.1/ +end + def rubinius? # :nodoc: defined?(RUBY_ENGINE) && RUBY_ENGINE == "rbx" end From 82d85b70f66de8c8c6f6ecb52f6536711c1de591 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADt=20Ondruch?= Date: Wed, 21 Jan 2015 16:46:45 +0100 Subject: [PATCH 07/13] Add support for Ruby 2.2. --- test/test-main.rb | 4 ++-- test/test-users-guide.rb | 2 +- test/testutil.rb | 4 ++++ 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/test/test-main.rb b/test/test-main.rb index 9dbe12e..eca7b21 100644 --- a/test/test-main.rb +++ b/test/test-main.rb @@ -216,7 +216,7 @@ def _with_dummy_file begin ENV['PATH'] = bindir + File::PATH_SEPARATOR + ENV['PATH'] ENV['_'] = 'erubis' - Tempfile.open(self.name.gsub(/[^\w]/,'_')) do |f| + Tempfile.open(self.method_name.gsub(/[^\w]/,'_')) do |f| f.write(INPUT) f.flush yield(f.path) @@ -273,7 +273,7 @@ def test_syntax2 # -z (syntax error) errmsgs << <<'END' 7: syntax error, unexpected $end, expecting keyword_end END - elsif ruby20? || ruby21? + elsif ruby20? || ruby21? || ruby22? errmsgs << <<'END' 3: syntax error, unexpected ']', expecting ')' _buf << '
  • '; _buf << ( item[:name]] ).to_s; _buf << '
  • diff --git a/test/test-users-guide.rb b/test/test-users-guide.rb index fee5435..af6c006 100644 --- a/test/test-users-guide.rb +++ b/test/test-users-guide.rb @@ -28,7 +28,7 @@ def _test s =~ /\A\$ (.*?)\n/ command = $1 expected = $' - if ruby19? || ruby20? || ruby21? + if ruby19? || ruby20? || ruby21? || ruby22? case @name when 'test_main_program1_result' expected.sub!('["eruby", "items", "x", "_buf"]', '[:_buf, :eruby, :items, :x]') diff --git a/test/testutil.rb b/test/testutil.rb index 1b841c3..e9130b7 100644 --- a/test/testutil.rb +++ b/test/testutil.rb @@ -25,6 +25,10 @@ def ruby21? # :nodoc: RUBY_VERSION =~ /\A2.1/ end +def ruby22? # :nodoc: + RUBY_VERSION =~ /\A2.2/ +end + def rubinius? # :nodoc: defined?(RUBY_ENGINE) && RUBY_ENGINE == "rbx" end From 4302dfdd74b04b848c48d7abea6f95477f6162d9 Mon Sep 17 00:00:00 2001 From: Jun Aruga Date: Mon, 21 Mar 2016 15:54:57 +0100 Subject: [PATCH 08/13] Add support for Ruby 2.3. --- test/test-main.rb | 2 +- test/test-users-guide.rb | 2 +- test/testutil.rb | 4 ++++ 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/test/test-main.rb b/test/test-main.rb index eca7b21..eed7e51 100644 --- a/test/test-main.rb +++ b/test/test-main.rb @@ -273,7 +273,7 @@ def test_syntax2 # -z (syntax error) errmsgs << <<'END' 7: syntax error, unexpected $end, expecting keyword_end END - elsif ruby20? || ruby21? || ruby22? + elsif ruby20? || ruby21? || ruby22? || ruby23? errmsgs << <<'END' 3: syntax error, unexpected ']', expecting ')' _buf << '
  • '; _buf << ( item[:name]] ).to_s; _buf << '
  • diff --git a/test/test-users-guide.rb b/test/test-users-guide.rb index af6c006..620a556 100644 --- a/test/test-users-guide.rb +++ b/test/test-users-guide.rb @@ -28,7 +28,7 @@ def _test s =~ /\A\$ (.*?)\n/ command = $1 expected = $' - if ruby19? || ruby20? || ruby21? || ruby22? + if ruby19? || ruby20? || ruby21? || ruby22? || ruby23? case @name when 'test_main_program1_result' expected.sub!('["eruby", "items", "x", "_buf"]', '[:_buf, :eruby, :items, :x]') diff --git a/test/testutil.rb b/test/testutil.rb index e9130b7..13db7d5 100644 --- a/test/testutil.rb +++ b/test/testutil.rb @@ -29,6 +29,10 @@ def ruby22? # :nodoc: RUBY_VERSION =~ /\A2.2/ end +def ruby23? # :nodoc: + RUBY_VERSION =~ /\A2.3/ +end + def rubinius? # :nodoc: defined?(RUBY_ENGINE) && RUBY_ENGINE == "rbx" end From d57273af33eaad9cca1b2b2a6b6d9521582a6417 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADt=20Ondruch?= Date: Tue, 17 Jan 2017 14:35:14 +0100 Subject: [PATCH 09/13] Add support for Ruby 2.4. --- test/test-main.rb | 13 +++++++++++++ test/test-users-guide.rb | 2 +- test/testutil.rb | 4 ++++ 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/test/test-main.rb b/test/test-main.rb index eed7e51..14a4bf8 100644 --- a/test/test-main.rb +++ b/test/test-main.rb @@ -285,6 +285,19 @@ def test_syntax2 # -z (syntax error) END errmsgs << <<'END' 7: syntax error, unexpected end-of-input, expecting keyword_end +END + elsif ruby24? + errmsgs << <<'END' +3: syntax error, unexpected ']', expecting ')' +
  • '; _buf << ( item[:name]] ).to_s; _buf << '
  • + ^ +-:4: syntax error, unexpected keyword_end, expecting ')' +'; end + ^ +-:7: syntax error, unexpected end-of-input, expecting ')' +END + errmsgs << <<'END' +7: syntax error, unexpected end-of-input, expecting keyword_end END elsif rubinius? errmsgs << <<'END' diff --git a/test/test-users-guide.rb b/test/test-users-guide.rb index 620a556..7ce94bf 100644 --- a/test/test-users-guide.rb +++ b/test/test-users-guide.rb @@ -28,7 +28,7 @@ def _test s =~ /\A\$ (.*?)\n/ command = $1 expected = $' - if ruby19? || ruby20? || ruby21? || ruby22? || ruby23? + if ruby19? || ruby20? || ruby21? || ruby22? || ruby23? || ruby24? case @name when 'test_main_program1_result' expected.sub!('["eruby", "items", "x", "_buf"]', '[:_buf, :eruby, :items, :x]') diff --git a/test/testutil.rb b/test/testutil.rb index 13db7d5..68518b0 100644 --- a/test/testutil.rb +++ b/test/testutil.rb @@ -33,6 +33,10 @@ def ruby23? # :nodoc: RUBY_VERSION =~ /\A2.3/ end +def ruby24? # :nodoc: + RUBY_VERSION =~ /\A2.4/ +end + def rubinius? # :nodoc: defined?(RUBY_ENGINE) && RUBY_ENGINE == "rbx" end From 363bf6cdee08e517021ff90082b9b36b7fa65b3b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADt=20Ondruch?= Date: Fri, 12 Jan 2018 16:15:55 +0100 Subject: [PATCH 10/13] Add support for Ruby 2.5. --- test/test-main.rb | 17 +++++++++++++++++ test/test-users-guide.rb | 2 +- test/testutil.rb | 6 +++++- 3 files changed, 23 insertions(+), 2 deletions(-) diff --git a/test/test-main.rb b/test/test-main.rb index 14a4bf8..212882d 100644 --- a/test/test-main.rb +++ b/test/test-main.rb @@ -298,6 +298,23 @@ def test_syntax2 # -z (syntax error) END errmsgs << <<'END' 7: syntax error, unexpected end-of-input, expecting keyword_end +END + elsif ruby25? + errmsgs << <<'END' +3: syntax error, unexpected ']', expecting ')' +...
  • '; _buf << ( item[:name]] ).to_s; _buf << '
  • +... ^ +-:4: syntax error, unexpected keyword_end, expecting ')' +'; end + ^~~ +-:7: syntax error, unexpected end-of-input, expecting ')' +_buf.to_s + ^ +END + errmsgs << <<'END' +7: syntax error, unexpected end-of-input, expecting keyword_end +_buf.to_s + ^ END elsif rubinius? errmsgs << <<'END' diff --git a/test/test-users-guide.rb b/test/test-users-guide.rb index 7ce94bf..c1c52af 100644 --- a/test/test-users-guide.rb +++ b/test/test-users-guide.rb @@ -28,7 +28,7 @@ def _test s =~ /\A\$ (.*?)\n/ command = $1 expected = $' - if ruby19? || ruby20? || ruby21? || ruby22? || ruby23? || ruby24? + if ruby19? || ruby20? || ruby21? || ruby22? || ruby23? || ruby24? || ruby25? case @name when 'test_main_program1_result' expected.sub!('["eruby", "items", "x", "_buf"]', '[:_buf, :eruby, :items, :x]') diff --git a/test/testutil.rb b/test/testutil.rb index 68518b0..1005d31 100644 --- a/test/testutil.rb +++ b/test/testutil.rb @@ -37,6 +37,10 @@ def ruby24? # :nodoc: RUBY_VERSION =~ /\A2.4/ end +def ruby25? # :nodoc: + RUBY_VERSION =~ /\A2.5/ +end + def rubinius? # :nodoc: defined?(RUBY_ENGINE) && RUBY_ENGINE == "rbx" end @@ -57,7 +61,7 @@ def self.load_yaml_datafile(filename, options={}, &block) # :nodoc: s = _untabify(s) unless options[:tabify] == false # load yaml document testdata_list = [] - YAML.load_documents(s) do |ydoc| + YAML.load_stream(s) do |ydoc| if ydoc.is_a?(Hash) testdata_list << ydoc elsif ydoc.is_a?(Array) From c5d8ee53483761855ce20b9f1a974294bd49c384 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADt=20Ondruch?= Date: Mon, 29 Apr 2019 14:28:57 +0200 Subject: [PATCH 11/13] Add support for Ruby 2.6. --- test/test-main.rb | 13 +++++++++++++ test/test-users-guide.rb | 2 +- test/testutil.rb | 4 ++++ 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/test/test-main.rb b/test/test-main.rb index 212882d..b1e3c52 100644 --- a/test/test-main.rb +++ b/test/test-main.rb @@ -315,6 +315,19 @@ def test_syntax2 # -z (syntax error) 7: syntax error, unexpected end-of-input, expecting keyword_end _buf.to_s ^ +END + elsif ruby26? + errmsgs << <<'END' +3: syntax error, unexpected ']', expecting ')' +...
  • '; _buf << ( item[:name]] ).to_s; _buf << '
  • +... ^ +-:4: syntax error, unexpected end, expecting ')' +'; end + ^~~ +-:7: syntax error, unexpected end-of-input, expecting ')' +END + errmsgs << <<'END' +7: syntax error, unexpected end-of-input, expecting end END elsif rubinius? errmsgs << <<'END' diff --git a/test/test-users-guide.rb b/test/test-users-guide.rb index c1c52af..5a43382 100644 --- a/test/test-users-guide.rb +++ b/test/test-users-guide.rb @@ -28,7 +28,7 @@ def _test s =~ /\A\$ (.*?)\n/ command = $1 expected = $' - if ruby19? || ruby20? || ruby21? || ruby22? || ruby23? || ruby24? || ruby25? + if ruby19? || ruby20? || ruby21? || ruby22? || ruby23? || ruby24? || ruby25? || ruby26? case @name when 'test_main_program1_result' expected.sub!('["eruby", "items", "x", "_buf"]', '[:_buf, :eruby, :items, :x]') diff --git a/test/testutil.rb b/test/testutil.rb index 1005d31..bead044 100644 --- a/test/testutil.rb +++ b/test/testutil.rb @@ -41,6 +41,10 @@ def ruby25? # :nodoc: RUBY_VERSION =~ /\A2.5/ end +def ruby26? # :nodoc: + RUBY_VERSION =~ /\A2.6/ +end + def rubinius? # :nodoc: defined?(RUBY_ENGINE) && RUBY_ENGINE == "rbx" end From bcabbe071a518c37e286829e6177f96e3bc17259 Mon Sep 17 00:00:00 2001 From: Michael J Gruber Date: Mon, 21 Sep 2020 18:08:42 +0200 Subject: [PATCH 12/13] Add support for Ruby 2.7. --- test/test-main.rb | 13 +++++++++++++ test/test-users-guide.rb | 2 +- test/testutil.rb | 4 ++++ 3 files changed, 18 insertions(+), 1 deletion(-) diff --git a/test/test-main.rb b/test/test-main.rb index b1e3c52..49de108 100644 --- a/test/test-main.rb +++ b/test/test-main.rb @@ -328,6 +328,19 @@ def test_syntax2 # -z (syntax error) END errmsgs << <<'END' 7: syntax error, unexpected end-of-input, expecting end +END + elsif ruby27? + errmsgs << <<'END' +3: syntax error, unexpected ']', expecting ')' +...
  • '; _buf << ( item[:name]] ).to_s; _buf << '
  • +... ^ +-:4: syntax error, unexpected `end', expecting ')' +'; end + ^~~ +-:7: syntax error, unexpected end-of-input, expecting ')' +END + errmsgs << <<'END' +7: syntax error, unexpected end-of-input, expecting `end' END elsif rubinius? errmsgs << <<'END' diff --git a/test/test-users-guide.rb b/test/test-users-guide.rb index 5a43382..5461d7e 100644 --- a/test/test-users-guide.rb +++ b/test/test-users-guide.rb @@ -28,7 +28,7 @@ def _test s =~ /\A\$ (.*?)\n/ command = $1 expected = $' - if ruby19? || ruby20? || ruby21? || ruby22? || ruby23? || ruby24? || ruby25? || ruby26? + if ruby19? || ruby20? || ruby21? || ruby22? || ruby23? || ruby24? || ruby25? || ruby26? || ruby27? case @name when 'test_main_program1_result' expected.sub!('["eruby", "items", "x", "_buf"]', '[:_buf, :eruby, :items, :x]') diff --git a/test/testutil.rb b/test/testutil.rb index bead044..f1b8428 100644 --- a/test/testutil.rb +++ b/test/testutil.rb @@ -45,6 +45,10 @@ def ruby26? # :nodoc: RUBY_VERSION =~ /\A2.6/ end +def ruby27? # :nodoc: + RUBY_VERSION =~ /\A2.7/ +end + def rubinius? # :nodoc: defined?(RUBY_ENGINE) && RUBY_ENGINE == "rbx" end From b52803b3058070dd441f723b9ac4822877e62d44 Mon Sep 17 00:00:00 2001 From: Oleg Girko Date: Fri, 18 Jun 2021 20:47:20 +0100 Subject: [PATCH 13/13] Add support for Ruby 3.0. Signed-off-by: Oleg Girko --- lib/erubis/engine.rb | 4 +++- test/test-main.rb | 2 +- test/test-users-guide.rb | 2 +- test/testutil.rb | 4 ++++ 4 files changed, 9 insertions(+), 3 deletions(-) diff --git a/lib/erubis/engine.rb b/lib/erubis/engine.rb index 1df7e28..d17b4ee 100644 --- a/lib/erubis/engine.rb +++ b/lib/erubis/engine.rb @@ -60,7 +60,9 @@ def self.load_file(filename, properties={}) File.rename(tmpname, cachename) File.utime(timestamp, timestamp, cachename) end - engine.src.untaint # ok? + if Gem::Version.new(RUBY_VERSION) < Gem::Version.new('2.7') + engine.src.untaint # ok? + end return engine end diff --git a/test/test-main.rb b/test/test-main.rb index 49de108..d1d7bce 100644 --- a/test/test-main.rb +++ b/test/test-main.rb @@ -329,7 +329,7 @@ def test_syntax2 # -z (syntax error) errmsgs << <<'END' 7: syntax error, unexpected end-of-input, expecting end END - elsif ruby27? + elsif ruby27? || ruby30? errmsgs << <<'END' 3: syntax error, unexpected ']', expecting ')' ...
  • '; _buf << ( item[:name]] ).to_s; _buf << '
  • diff --git a/test/test-users-guide.rb b/test/test-users-guide.rb index 5461d7e..ed2c7e7 100644 --- a/test/test-users-guide.rb +++ b/test/test-users-guide.rb @@ -28,7 +28,7 @@ def _test s =~ /\A\$ (.*?)\n/ command = $1 expected = $' - if ruby19? || ruby20? || ruby21? || ruby22? || ruby23? || ruby24? || ruby25? || ruby26? || ruby27? + if ruby19? || ruby20? || ruby21? || ruby22? || ruby23? || ruby24? || ruby25? || ruby26? || ruby27? || ruby30? case @name when 'test_main_program1_result' expected.sub!('["eruby", "items", "x", "_buf"]', '[:_buf, :eruby, :items, :x]') diff --git a/test/testutil.rb b/test/testutil.rb index f1b8428..f1b188c 100644 --- a/test/testutil.rb +++ b/test/testutil.rb @@ -49,6 +49,10 @@ def ruby27? # :nodoc: RUBY_VERSION =~ /\A2.7/ end +def ruby30? # :nodoc: + RUBY_VERSION =~ /\A3.0/ +end + def rubinius? # :nodoc: defined?(RUBY_ENGINE) && RUBY_ENGINE == "rbx" end