将多行参数发送到OptionParser

时间:2015-11-13 13:23:19

标签: ruby rspec newline optionparser

我的项目中有.rspec个文件,内容如下:
--exclude-pattern spec/1_spec.rb, spec/2_spec.rb
有很长的规格,所以我想把它分成几行,但不知道怎么做 --exclude-pattern spec/1_spec.rb, \ spec/2_spec.rb 似乎不起作用,rspec命令给出错误: Unmatched double quote: "--exclude-pattern 'spec/1_spec.rb, 我应该使用什么行分隔符?

更新: 我发现,rspec uses OptionParser来解析这些论点。 所以我可以改写一下我的问题:
如何将多行参数发送到OptionParser

1 个答案:

答案 0 :(得分:1)

您知道可以在此文件中使用ERB吗?假设您在同一目录中有一个excluded_files.txt文件,其内容为:

spec/1_spec.rb
spec/2_spec.rb

您可以这样写.rspec

--exclude-pattern <%= File.readlines('excluded_files.txt').map(&:strip).join(', ') %>

这应该是由逗号分隔的单个被排除文件串。

P.S。也许您应该使用tags代替?