Rails 4 – 语法错误,意外的tIDENTIFIER,期望输入结束
我有一段代码,我试图用rspec运行。
require 'spec_helper' describe "User" do before { @user = User.new(name: "Example User", email: "user@example.com", password: "foobar", password_confirmation: "foobar") } subject { @user } it { should respond_to(:name)} end
我收到以下错误
c:\Sites\sample_app>rspec spec/models/user_spec.rb C:/RailsInstaller/Ruby2.0.0/lib/ruby/gems/2.0.0/gems/rspec-core-2.13.1/lib/rspec /core/configuration.rb:819:in `load': c:/Sites/sample_app/spec/models/user_spec. rb:1: syntax error, unexpected tIDENTIFIER, expecting end-of-input (SyntaxError) before { @user...er'
现在我在一个新文件中重新键入测试并运行它并且没有错误。 我想有一些编码问题或者我没有学到的东西,我没有得到。 有没有人可以对这个问题有所了解?
你似乎确实被“零宽度空间问题”所困扰。 我知道,这非常令人沮丧。 你认为“显示空白”应该解决这个问题,特别是在像Sublime这样高级的编辑器中。
无论如何,要在Sublime 2中检测这些字符的存在,您可以使用此插件。 显示它们。
顺便说一句,几个月前,当我从一个网站中复制/粘贴一些代码时,我就浪费了几个小时甚至几天的时间。
我搜索了Sublime 2网站上与此相关的任何post(例如function请求等),但没有找到任何内容,所以我不知道这是否在他们的雷达上。
注意:此答案的原始版本假设零宽度空格字符与非中断空格相同,而不是。 不间断的空间,虽然它们仍会产生语法错误,但更容易检测,因为它们在显示器中“占用空间”(即“看起来像一个空间”)。 还有“零宽度不间断空间”,这仍然是不同的。 虽然很容易进入Mac上的非破坏空间(即Option-Space),但我知道无法进入任何零宽度空间。
- 缺少必需的参数:aws_access_key_id,aws_secret_access_key
- 用于创建属性“货币”的弃用警告
- button_to表单提交在浏览器中工作但是没有rspec / capybara测试,路由错误
- 使用带有Page-Object的IE 11 x64时出现“Watir :: Exception :: NoMatchingWindowFoundException:浏览器窗口已关闭”错误
- 为什么’rspec spec’比’bundle exec spec’运行得更快,使用的资源更少
- 在rspec中别名’it’
- 如何测试Singleton类?
- 测试在我的Ubuntu pc上运行,但不在我的Mac OS X Lion 10.7.3,Ruby 1.9.3,Rails 3.2.1上运行
- 存根和rspec旧语法的问题