【问题标题】:Sublime Test 2 RubyTest not showing any resultsSublime Text 2 RubyTest 没有显示任何结果
【发布时间】:2012-12-19 05:49:32
【问题描述】:

我正在关注 Ruby on Rails 教程。在 Sublime Text 2 中测试 RubyTest (CMD+Shift+R; CMD+Shift+T; CMD+Shift+E) 时,什么也没有出现。窗口在我的文件下方打开测试应该是,它说“建筑”,但随后“建筑”消失了,什么也没有留下。没有测试,没有绿色,红色,什么都没有。

我已按说明添加了 RubyTest,并按说明从命令行打开。需要更多帮助进行故障排除。

使用 OSX Lion、Ruby 1.9.3、Rails 3.2.10。我的 Guard 和 Spork 测试很好。我的 RubyTest 设置符合 RubyTest.sublime-settings

有什么想法或开始的地方吗?我对此很陌生,但该死的固执,所以我想解决,而不是“继续前进”。提前致谢。

【问题讨论】:

  • 你有没有让它工作?
  • 不,我现在只是在终端中使用 rspec spec 命令。在课程中休息一下,专门加强 ruby​​ 编码,但仍然希望得到一些帮助。

标签: ruby-on-rails sublimetext2


【解决方案1】:

我想我可能有适合您的解决方案,因为我刚刚遇到了同样的问题并解决了它。

首先,通过深入 Sublime Text 2 控制台 (View > Show Console) 找出导致 RubyTest 出现 "Building..." 错误的原因。

这是我的控制台输出:

Running rspec spec/requests/static_pages_spec.rb -l15
Traceback (most recent call last):
  File "./sublime_plugin.py", line 337, in run_
  File "./exec.py", line 154, in run
  File "./exec.py", line 45, in __init__
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 72: ordinal not in range(128)
reloading /Users/Jonathan/Library/Application Support/Sublime Text 2/Packages/User/RubyTest.last-run

取自here,事实证明ST2 尝试评估所有shell 表达式。

在同一个链接中,我修复它的方法如下:转到 Library > Application Support > Sublime Text 2 > Packages > Default 并从第 45 行的 for 循环开始编辑 exec.py

for k, v in proc_env.iteritems():
    path_vars = os.path.expandvars(v)
    if isinstance(path_vars, unicode):
        path_vars = path_vars.encode(sys.getfilesystemencoding())
        proc_env[k] = path_vars

希望这能解决您的问题!

【讨论】:

  • 它不太奏效。现在“建筑”部分消失了,但仍然没有结果。我用您的代码替换了“第 45 行”,即 proc_env[k] = os.path.expandvars(v).encode(sys.getfilesystemencoding())。这就是你的建议吗?
  • 抱歉,我似乎无法正确理解评论。我会继续努力,但希望你能明白我的问题的要点。
  • 第 45 行应该有一个 for 循环,只需将整个 for 循环替换为代码 sn-p。
  • 再次尝试但无法获得。然后尝试使用您帮助引导我找到的这个。 link 非常感谢。
  • 太棒了!很高兴我能帮助你。 :)
猜你喜欢
  • 2013-08-28
  • 2011-11-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-23
  • 2013-03-05
  • 2015-08-31
  • 1970-01-01
相关资源
最近更新 更多