小编Lac*_*ter的帖子

没有路由匹配rspec的匿名控制器

基于我对rspec规范的理解,我希望通过以下示例.

describe ApplicationController do

  controller do
    def test
    end
  end

  it "calls actions" do
    get :test
  end

end
Run Code Online (Sandbox Code Playgroud)

相反,它失败了:

No route matches {:controller=>"anonymous", :action=>"test"}
Run Code Online (Sandbox Code Playgroud)

我甚至尝试在路径文件中为"匿名"控制器定义路由,但无济于事.这里有什么我想念的吗?这应该工作,不应该吗?

rspec ruby-on-rails-3

28
推荐指数
3
解决办法
7732
查看次数

不得共享RSpec共享示例

这让我感到惊讶......

似乎您不能在项目的任何位置为2个rspec共享示例组使用相同的名称.如果你这样做,那么当你运行rake spec(运行所有规范)时,rspec会抱怨使用非唯一名称声明了一个共享示例组.

即使调用shared_examples_for包含在一个描述块中,也会发生这种情况(人们会认为这应该是示例范围).

起初我试图通过更改示例组的名称来解决这个问题(不理想,但我可以忍受它).

但是,当我想将示例组分解为单独的文件时,这就成了一个问题,因此我可以在多个spec文件之间共享它.

当单独运行时,规范工作正常,但是当我运行套件时,rspec抱怨.

`ensure_shared_example_group_name_not_taken': \
Shared example group 'a person' already exists (ArgumentError)
Run Code Online (Sandbox Code Playgroud)

当然这是一个常见的问题.

这里有什么我想念的吗?

rspec ruby-on-rails

13
推荐指数
1
解决办法
5285
查看次数

标签 统计

rspec ×2

ruby-on-rails ×1

ruby-on-rails-3 ×1