ruby - TestFirst.org Learn Ruby rake 和弃用警告 :should and :expect syntax

标签 ruby linux rspec test-first deprecation-warning

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

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

Deprecation Warnings:

Using should from rspec-expectations' old :should syntax without explicitly enabling the syntax is deprecated. Use the new :expect syntax or explicitly enable :should instead. Called from /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.2 ,rails 4.1.1,我有 RSpec 3.0.0、2.99.0、2.0.0。我什至试图找到一个关于更改语法的教程,但它真的很令人困惑,因为它引入了很多我不知道的 Ruby 概念。在那一点上,我觉得我已经超出了我的头脑并且我缺少一些简单的东西。

希望我提供了足够的信息以获得帮助。

最佳答案

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

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

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

或者您可以使用 rspec --fail-fast --color 运行 rspec。

或者,您可以将它放在 $HOME/.rspec 中,这样它总是会这样做:

--fail-fast
--color

关于ruby - TestFirst.org Learn Ruby rake 和弃用警告 :should and :expect syntax,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24174812/

相关文章:

mysql - 将 Rails 3 应用程序开发环境移至另一台机器

ruby - 在 Ruby 中,如何通过 Sinatra 获取 `li` 标记内的链接?

ruby - 以类似表格的格式输出哈希值

ruby - `var = something rescue nil` 行为

具有部分路径的 linux 别名

linux - 我们可以使用 keepalived 将 cpp 应用程序作为 HA 吗?

ruby-on-rails - 我可以从安装了它的真实应用程序中运行Rails引擎规范吗?

ruby-on-rails - 预期 css "title"与文本 "Ruby on Rails Tutorial Sample App | Sign Up"返回一些东西

ruby - 使用 RSpec 的非 Rails 项目的首选目录结构是什么?

python - 为什么我在 SSH 服务器上安装 SpaCy en_core_web_sm 时遇到 PermissionError