【问题标题】:How to find mystery YAML error?如何找到神秘的 YAML 错误?
【发布时间】:2012-08-16 05:02:33
【问题描述】:

在进行一些测试时,我开始在所有测试中收到以下错误。

Psych::SyntaxError: couldn't parse YAML at line 92 column 0

使用此代码运行测试:

ruby -Itest ./test/functional/users_controller_test.rb

我在固定装置中找不到任何 YAML 错误,因此我撤消了所有更改。根据 git,这些文件与我开始时的状态相同。但我一直收到同样的错误。

如何解决?如何找到导致问题的文件?

Rails 3.0.7
红宝石 1.9.2p290

【问题讨论】:

  • 我认为它不是 test/fixtures 目录中的一个。我在控制台中加载了其中一些,它们加载得很好。我认为这是某种配置设置......但我认为没有任何改变。测试文件确实使用 Spork 运行。

标签: ruby-on-rails ruby-on-rails-3 yaml fixtures


【解决方案1】:

将您的 Rails 升级到更新的 3.0.x 版本,并查看 at this other Stack Overflow question 以获取其他提示。

【讨论】:

    【解决方案2】:

    找到了!两个夹具文件中有一个制表符。

    奇怪的是这些文件并没有比以前改变。他们过去工作得很好。我确信这一点,因为 git 可以区分制表符和空格。 (文件现已修改)。

    显然,gem 或其他文件已使用更挑剔的 YAML 解析器进行了更新……但奇怪的是我没有更新任何内容。

    我想这是运行 RVM 或 rbenv(我就是)的一个很好的理由。太糟糕了,它没有解释发生了什么......

    【讨论】:

      猜你喜欢
      • 2015-03-13
      • 2017-04-20
      • 2014-06-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多