0

在通过 Google 进行多次搜索后,我已经准备好从社区获得一些意见。我正在尝试申请旧金山的 App Academy,其中一项所需的准备工作是 TestFirst 的 Learn_ruby。我最初在我的 Windows 机器上的 Linux VM 上配置了这个。它工作得很好。当我运行 rake 时,它​​会一次列出一个问题;文字是有用的颜色;并且输出非常简洁,所以我只得到了我需要阅读的内容。我最近将我的系统擦除并配置为双启动 Xubuntu 14.04/Windows,而我曾经拥有的虚拟机早已不复存在。就像我在 VM 中所做的那样,我努力在我的 linux vm 中设置 Ruby。

我现在的问题是,当我rake在我的项目上运行时,我会收到相同的折旧警告:

弃用警告:

不推荐使用shouldfrom rspec-expectations 的旧:should语法而不显式启用该语法。改用新:expect 语法或显式启用:should。从 /home/kaji/Projects/learn_ruby/05_silly_blocks/silly_blocks_spec.rb:25:in `block (3 levels) in '调用。

在谷歌来回搜索之后,我在很大程度上理解了错误告诉我的内容。我什至找到了解决办法让它消失。感谢这篇文章:RSpec's New Expectation Syntax,我能够找到一种语法来消除警告。(基本上必须更改blah.should == #到文件expect(blah()).to eq(#)内部*_spec.rb。这似乎使警告很高兴。但是我仍然看到迹象表明我还有另一个问题。

输出不像我在虚拟机上时那样“友好”。它不是彩色的;它一次转储所有错误。我最喜欢 learn_ruby 的地方在于它一次只给了我一个目标,而输出却很少。现在我必须向上滚动很多方法才能看到我的问题是什么。

我已经厌倦了完全删除 RVM 和所有 gem 并重新安装以查看是否可以解决此问题。没有骰子。我是一个 Ruby Noobie,我对这一切有点不知所措。我想重新开始学习基础知识,但这已经困扰了我一个多星期。有没有人有这个问题/修复除了

我也尝试rpsec ~<=2.0从 Rakefile 中删除。我正在使用ruby -v 2.1.2Rails 4.1.1,并且我有 RSpec 3.0.0、2.99.0、2.0.0。我什至尝试找到一个关于更改语法的教程,但它确实令人困惑,因为它引入了许多我不知道的 Ruby 概念。在那一点上,我觉得我已经不知所措了,我缺少一些简单的东西。

希望我提供了足够的信息来提供帮助。

4

1 回答 1

2

我希望我回答的是正确的问题,因为您似乎已经弄清楚了标题中的问题(即首选语法已从blah.shouldto更改expect(blah).to)。如果您更改标题以反映实际问题,这将有所帮助。

RSpec.configure do |config|
  config.fail_fast = true
  config.color_enabled = true
}

将使 RSpec 在第一个错误时失败,而不是在运行所有测试之后,并为该文件启用颜色。

或者你可以运行 rspec rspec --fail-fast --color

或者,您可以将其放入,$HOME/.rspec以便它始终这样做:

--fail-fast
--color
于 2014-06-12T00:47:46.787 回答