0

在 rails 3.2.8 应用程序的应用程序控制器中定义了一个方法 assign_user_rights。在 applications_controller_spec.rb 中,有一个方法的测试用例:

   it "should assign_user_right" do
      .....
      assign_user_rights
      session[:index_all_users].should be_true
    end

错误:

Failure/Error: assign_user_rights
     NameError:
       undefined local variable or method `assign_user_rights' for #<RSpec::Core::ExampleGroup::Nested_1::Nested_4:0x57550e0>

由于 assign_user_rights 是在应用程序控制器中定义的,因此它应该在其规范文件中很容易看到。然而,我们看到的情况并非如此。代码可能有什么问题?谢谢。

4

3 回答 3

1

尝试controller.assign_user_rights改用

于 2012-10-31T04:38:31.567 回答
1
get :assign_user_rights
response.should be_true
于 2012-10-31T06:42:37.460 回答
1

请检查控制器 applications_controller_spec.rb 是 application_controller.rb 的子类。

           If it's not a sub class of application controller,  call the method using controller_name.assign_user_rights
于 2012-10-31T07:23:30.303 回答