gpt4 book ai didi

ruby - RSpec 找不到嵌套的格式化程序

转载 作者:数据小太阳 更新时间:2023-10-29 06:36:23 24 4
gpt4 key购买 nike

我正在尝试仅针对 Ruby(而非 Rails)运行 rspec,针对一个简单的 Ruby 文件。我正在关注 Tut+ TDD Testing with Ruby。

我有一个 competition 目录,其中包含一个 lib 文件夹和一个 spec 文件夹。

├── lib  
│   ├── competition.rb
│   └── team.rb
└── spec
└── competition_spec.rb

当我运行 rspec 时,我得到了这个错误。我可以发誓 rspec 以前工作过。我不知道发生了什么事。

competition :> rspec spec
/Users/akh88/.rvm/gems/ruby-1.9.3-p547/gems/rspec-core-> 3.0.2/lib/rspec/core/formatters.rb:167:in `find_formatter': Formatter 'nested' unknown - maybe you meant 'documentation' or 'progress'?. (ArgumentError)

我的competition_spec.rb

require_relative "../lib/competiiton.rb"  
require_relative "../lib/team.rb"

describe Competition do
let(:competition) {Competition.new}
let(:team) {Team.new}

context "having no questions" do
before { competition.questions = [] }

it "doesn't accept any teams" do
expect do
team.enter_competition(competition)
end.to raise_error Competition::Closed
end
end
end

在 Mac OSX 10.9.4 上,我的 rvm 默认 Ruby 版本是 1.9.1。

最佳答案

RSpec 1 中使用了 nested 格式化程序。它在 RSpec 2 中被重命名为 documentation

也许您在命令行或 .rspec 文件中指定了 nested?然后你需要指定 --format documentation 来代替。

您是否在某处设置了 config.formatter = nested,可能是您的 spec_helper.rb 文件?将其删除。

您可能已经从 v1 更新了 RSpec gem(运行测试的命令从 spec 更改为 rspec,所以很难错过)。您可以使用 gem list rspec 检查版本。

或者,您可能缺少 custom formatter 的负载你碰巧调用了 nested

关于ruby - RSpec 找不到嵌套的格式化程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24688592/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com