diff options
author | HParker <HParker@github.com> | 2023-12-07 15:47:36 -0800 |
---|---|---|
committer | Kevin Newton <kddnewton@gmail.com> | 2023-12-15 13:42:19 -0500 |
commit | 55326a915f25608be1d40ab32baa9fc57762615d (patch) | |
tree | 69dc288dcadf3e09206c287919be5c7d9711edc2 /test/ruby/test_rubyoptions.rb | |
parent | 655c02790ee5aca122d3593fadab5b41a42a1899 (diff) |
Introduce --parser runtime flag
Introduce runtime flag for specifying the parser,
```
ruby --parser=prism
```
also update the description:
```
$ ruby --parser=prism --version
ruby 3.3.0dev (2023-12-08T04:47:14Z add-parser-runtime.. 0616384c9f) +PRISM [x86_64-darwin23]
```
[Bug #20044]
Diffstat (limited to 'test/ruby/test_rubyoptions.rb')
-rw-r--r-- | test/ruby/test_rubyoptions.rb | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/test/ruby/test_rubyoptions.rb b/test/ruby/test_rubyoptions.rb index eb10ed6aec..be363008de 100644 --- a/test/ruby/test_rubyoptions.rb +++ b/test/ruby/test_rubyoptions.rb @@ -287,6 +287,19 @@ class TestRubyOptions < Test::Unit::TestCase end end + def test_parser_flag + warning = /The Prism compiler is currently experimental and compatibility with parse.y is not yet complete. Please report an issues you find on the prism issue tracker./ + + assert_in_out_err(%w(--parser=prism -e) + ["puts :hi"], "", %w(hi), warning) + + assert_in_out_err(%w(--parser=parse.y -e) + ["puts :hi"], "", %w(hi), []) + assert_norun_with_rflag('--parser=parse.y', '--version', "") + + assert_in_out_err(%w(--parser=notreal -e) + ["puts :hi"], "", [], /unknown parser notreal/) + + assert_in_out_err(%w(--parser=prism --version), "", /\+PRISM/, warning) + end + def test_eval assert_in_out_err(%w(-e), "", [], /no code specified for -e \(RuntimeError\)/) end |