我有以下索引操作:
class ExpensesController < ApplicationController
def index()
@expenses = Expense.all
end
end
我想在功能测试中模拟对所有人的调用。我正在使用flexmock并编写了以下测试:
require 'test_helper'
require 'flexmock'
require 'flexmock/test_unit'
class ExpensesControllerTest < ActionController::TestCase
test "should render index" do
flexmock(Expense).should_receive(:all).and_return([])
get :index
assert_response :success
assert_template :index
assert_equal [], assigns(:presentations)
end
end
问题是最后一个断言fais,出现以下错误消息:
的百分比抑制率]&GT;预期但是没有。
我很困惑我做错了什么。这应该不起作用吗?
答案 0 :(得分:2)
您的测试检查:presentations
:
assert_equal [], assigns(:presentations)
您的意思是:expenses
吗?
assert_equal [], assigns(:expenses)
您的控制器未设置@presentations
,因此报告的值为nil
。