使用guard-rspec时如何忽略Rubocop检查?

4
当我添加了guard-rspec宝石并将Guardfile设置为以下内容时:
guard :rspec, cmd: 'bundle exec rspec' do
  watch('spec/spec_helper.rb')                        { "spec" }
  watch('config/routes.rb')                           { "spec/routing" }
  watch('app/controllers/application_controller.rb')  { "spec/controllers" }
  watch(%r{^spec/.+_spec\.rb$})
end

然后运行rubocop检查:

rake rubocop:rubocop

它显示:
Guardfile:5:9: C: Use %r only for regular expressions matching more than 1 '/' character.
watch(%r{^spec/.+_spec\.rb$})
      ^^^^^^^^^^^^^^^^^^^^^^

我应该尝试重写常规代码还是编写忽略代码到.rubocop.yml文件中?

2个回答

1
Rubocop告诉您,如果正则表达式本身包含超过1个“/”字符,则应仅使用扩展的正则表达式符号%r{}。否则,应使用//符号并转义/符号。
您可以将该行重写为watch(/^spec\/.+_spec\.rb$/),以消除警告,而不更改正则表达式本身。

1

我改成了watch(%r{^spec/(.*)/(.*)\.rb$}),然后就通过了。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接