RSpec won't use syntax_suggest
还没有人认领这个 Issue。
评估
调研方向
先从链接的 Gemfile、.rspec 和 spec/sample_spec.rb 开始,然后阅读 syntax_suggest README,并复现 bundle exec rspec 与 syntax_suggest spec/sample_spec.rb 之间的差异。跟踪 RSpec 如何加载无效的 spec,并确定需要什么才能让 syntax_suggest 在 RSpec 运行期间报告语法错误。当提供的示例通过 bundle exec rspec 产生 syntax_suggest 输出时,即表示完成。
由索引模型根据 Issue 内容生成。
描述
I wrote a sample RSpec code to test syntax_suggest and Ruby 3.2.0rc1: https://github.com/JunichiIto/syntax_suggest_sandbox
I have a wrong spec file:
https://github.com/JunichiIto/syntax_suggest_sandbox/blob/main/spec/sample_spec.rb
RSpec.describe 'sample' do
exampledo
expect(1 + 1).to eq 2
end
end
I added gem "syntax_suggest" to Gemfile and --require syntax_suggest to .rspec according to README.
- https://github.com/JunichiIto/syntax_suggest_sandbox/blob/main/Gemfile
- https://github.com/JunichiIto/syntax_suggest_sandbox/blob/main/.rspec
I ran bundle exec rspec but RSpec won't use syntax_suggest:
$ bundle exec rspec
An error occurred while loading ./spec/sample_spec.rb.
Failure/Error: __send__(method, file)
SyntaxError:
/Users/jnito/dev/sandbox/syntax_suggest_sandbox/spec/sample_spec.rb:5: syntax error, unexpected `end'
# /Users/jnito/dev/sandbox/syntax_suggest_sandbox/vendor/bundle/ruby/3.2.0+3/gems/rspec-core-3.12.0/lib/rspec/core/configuration.rb:2117:in `load'
# /Users/jnito/dev/sandbox/syntax_suggest_sandbox/vendor/bundle/ruby/3.2.0+3/gems/rspec-core-3.12.0/lib/rspec/core/configuration.rb:2117:in `load_file_handling_errors'
# /Users/jnito/dev/sandbox/syntax_suggest_sandbox/vendor/bundle/ruby/3.2.0+3/gems/rspec-core-3.12.0/lib/rspec/core/configuration.rb:1617:in `block in load_spec_files'
# /Users/jnito/dev/sandbox/syntax_suggest_sandbox/vendor/bundle/ruby/3.2.0+3/gems/rspec-core-3.12.0/lib/rspec/core/configuration.rb:1615:in `each'
# /Users/jnito/dev/sandbox/syntax_suggest_sandbox/vendor/bundle/ruby/3.2.0+3/gems/rspec-core-3.12.0/lib/rspec/core/configuration.rb:1615:in `load_spec_files'
# /Users/jnito/dev/sandbox/syntax_suggest_sandbox/vendor/bundle/ruby/3.2.0+3/gems/rspec-core-3.12.0/lib/rspec/core/runner.rb:102:in `setup'
# /Users/jnito/dev/sandbox/syntax_suggest_sandbox/vendor/bundle/ruby/3.2.0+3/gems/rspec-core-3.12.0/lib/rspec/core/runner.rb:86:in `run'
# /Users/jnito/dev/sandbox/syntax_suggest_sandbox/vendor/bundle/ruby/3.2.0+3/gems/rspec-core-3.12.0/lib/rspec/core/runner.rb:71:in `run'
# /Users/jnito/dev/sandbox/syntax_suggest_sandbox/vendor/bundle/ruby/3.2.0+3/gems/rspec-core-3.12.0/lib/rspec/core/runner.rb:45:in `invoke'
# /Users/jnito/dev/sandbox/syntax_suggest_sandbox/vendor/bundle/ruby/3.2.0+3/gems/rspec-core-3.12.0/exe/rspec:4:in `<top (required)>'
# /Users/jnito/dev/sandbox/syntax_suggest_sandbox/vendor/bundle/ruby/3.2.0+3/bin/rspec:25:in `load'
# /Users/jnito/dev/sandbox/syntax_suggest_sandbox/vendor/bundle/ruby/3.2.0+3/bin/rspec:25:in `<top (required)>'
# /Users/jnito/.rbenv/versions/3.2.0-rc1/lib/ruby/3.2.0+3/bundler/cli/exec.rb:58:in `load'
# /Users/jnito/.rbenv/versions/3.2.0-rc1/lib/ruby/3.2.0+3/bundler/cli/exec.rb:58:in `kernel_load'
# /Users/jnito/.rbenv/versions/3.2.0-rc1/lib/ruby/3.2.0+3/bundler/cli/exec.rb:23:in `run'
# /Users/jnito/.rbenv/versions/3.2.0-rc1/lib/ruby/3.2.0+3/bundler/cli.rb:486:in `exec'
# /Users/jnito/.rbenv/versions/3.2.0-rc1/lib/ruby/3.2.0+3/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
# /Users/jnito/.rbenv/versions/3.2.0-rc1/lib/ruby/3.2.0+3/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
# /Users/jnito/.rbenv/versions/3.2.0-rc1/lib/ruby/3.2.0+3/bundler/vendor/thor/lib/thor.rb:392:in `dispatch'
# /Users/jnito/.rbenv/versions/3.2.0-rc1/lib/ruby/3.2.0+3/bundler/cli.rb:31:in `dispatch'
# /Users/jnito/.rbenv/versions/3.2.0-rc1/lib/ruby/3.2.0+3/bundler/vendor/thor/lib/thor/base.rb:485:in `start'
# /Users/jnito/.rbenv/versions/3.2.0-rc1/lib/ruby/3.2.0+3/bundler/cli.rb:25:in `start'
# /Users/jnito/.rbenv/versions/3.2.0-rc1/lib/ruby/gems/3.2.0+3/gems/bundler-2.4.0.dev/libexec/bundle:48:in `block in <top (required)>'
# /Users/jnito/.rbenv/versions/3.2.0-rc1/lib/ruby/3.2.0+3/bundler/friendly_errors.rb:120:in `with_friendly_errors'
# /Users/jnito/.rbenv/versions/3.2.0-rc1/lib/ruby/gems/3.2.0+3/gems/bundler-2.4.0.dev/libexec/bundle:36:in `<top (required)>'
# /Users/jnito/.rbenv/versions/3.2.0-rc1/bin/bundle:25:in `load'
# /Users/jnito/.rbenv/versions/3.2.0-rc1/bin/bundle:25:in `<main>'
#
# Showing full backtrace because every line was filtered out.
# See docs for RSpec::Configuration#backtrace_exclusion_patterns and
# RSpec::Configuration#backtrace_inclusion_patterns for more information.
No examples found.
Finished in 0.00002 seconds (files took 0.09691 seconds to load)
0 examples, 0 failures, 1 error occurred outside of examples
CLI command works fine:
$ syntax_suggest spec/sample_spec.rb
--> /Users/jnito/dev/sandbox/syntax_suggest_sandbox/spec/sample_spec.rb
Unmatched `end', missing keyword (`do', `def`, `if`, etc.) ?
1 RSpec.describe 'sample' do
> 2 exampledo
> 4 end
5 end
How can I use syntax_suggest when I ran bundle exec rspec ?
- 主要语言
- Ruby
- 星标
- 350
- 派生
- 17
- 平均合并
- 48 分钟
- 30 天内合并 PR
- 5
贡献指南
这个仓库没有索引到贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
ruby/syntax_suggest 的其他 Issue
-
难度 4/5 3-5 天 新手友好度 38/100
ruby/syntax_suggest#258 · 6 条评论 ·
-
难度 4/5 3-5 天 新手友好度 30/100
ruby/syntax_suggest#206 ·
-
难度 4/5 3-5 天 新手友好度 42/100
ruby/syntax_suggest#205 · 1 条评论 ·
-
难度 5/5 一周以上 新手友好度 20/100
ruby/syntax_suggest#118 · 3 条评论 ·
-
难度 2/5 1-3 小时 新手友好度 45/100
ruby/syntax_suggest#109 · 1 条评论 ·
查看 ruby/syntax_suggest 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 75/100
TheOdinProject/curriculum#31417 · 2 条评论 ·
-
难度 2/5 1-3 小时 新手友好度 70/100
-
难度 2/5 1-3 小时 新手友好度 70/100
-
难度 2/5 1-3 小时 新手友好度 65/100
glossarist/glossarist-ruby#238 ·
-
难度 2/5 1-3 小时 新手友好度 75/100
palladius/rails8-app-on-gcp#145 ·