aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKevin Newton <kddnewton@gmail.com>2024-03-06 10:43:57 -0500
committergit <svn-admin@ruby-lang.org>2024-03-06 16:43:05 +0000
commit1966b5c8c607325bce251ceca016db720b643a10 (patch)
tree670a5f9dd192dc6dca60c9b6c25d24ea85781884
parentbafe89735188d76af0565da16ae2972529ebb0c2 (diff)
downloadruby-1966b5c8c607325bce251ceca016db720b643a10.tar.gz
[ruby/prism] Only run ripper tests on 3.3+
https://github.com/ruby/prism/commit/f8b973e8cd
-rw-r--r--lib/prism/translation/ripper.rb10
-rw-r--r--lib/prism/translation/ripper/sexp.rb1
-rw-r--r--test/prism/ripper_test.rb7
3 files changed, 7 insertions, 11 deletions
diff --git a/lib/prism/translation/ripper.rb b/lib/prism/translation/ripper.rb
index 12205d3249..849c0b8089 100644
--- a/lib/prism/translation/ripper.rb
+++ b/lib/prism/translation/ripper.rb
@@ -903,21 +903,13 @@ module Prism
if node.locals.any?
visit_all(node.locals)
else
- visit_block_parameters_node_empty_locals
+ false
end
bounds(node.location)
on_block_var(parameters, locals)
end
- if RUBY_ENGINE == "jruby"
- # For JRuby, empty locals in an on_block_var is nil.
- private def visit_block_parameters_node_empty_locals; nil; end
- else
- # For everyone else, empty locals in an on_block_var is false.
- private def visit_block_parameters_node_empty_locals; false; end
- end
-
# break
# ^^^^^
#
diff --git a/lib/prism/translation/ripper/sexp.rb b/lib/prism/translation/ripper/sexp.rb
index f1e1086b66..9cb717b9d4 100644
--- a/lib/prism/translation/ripper/sexp.rb
+++ b/lib/prism/translation/ripper/sexp.rb
@@ -44,7 +44,6 @@ module Prism
module_eval(<<-End, __FILE__, __LINE__ + 1)
def on_#{event}(*args)
args.unshift :#{event}
- args
end
End
end
diff --git a/test/prism/ripper_test.rb b/test/prism/ripper_test.rb
index 59a116c593..f19e8ddbb6 100644
--- a/test/prism/ripper_test.rb
+++ b/test/prism/ripper_test.rb
@@ -1,5 +1,7 @@
# frozen_string_literal: true
+return if RUBY_VERSION < "3.3"
+
require_relative "test_helper"
module Prism
@@ -52,10 +54,13 @@ module Prism
relatives.each do |relative|
# Skip the tests that Ripper is reporting the wrong results for.
next if incorrect.include?(relative)
+
+ # Skip the tests we haven't implemented yet.
+ next if omitted.include?(relative)
+
filepath = File.join(__dir__, "fixtures", relative)
define_method "test_ripper_#{relative}" do
- omit("Not yet implemented") if omitted.include?(relative)
source = File.read(filepath, binmode: true, external_encoding: Encoding::UTF_8)
case relative