1

私のテストは次のとおりです。

test "should post make_admin" do
    user = FactoryGirl.create(:user, admin: true)
    sign_in(user)
    before_value = user.admin
    post :make_admin, id: user.id
    after_value = user.admin
    assert_not_equal before_value, after_value
    assert_response :redirect
  end

コントローラーは次のようになります。

def make_admin
    user = User.find_by_id(params[:id])
    user.toggle!(:admin)
    redirect_to static_pages_user_index_path
  end

それでも、このエラーが発生し続けます:

Failure:
test_should_post_make_admin(StaticPagesControllerTest) [..../functional/static_pages_controller_test.rb:48]:
<true> expected to be != to
<true>.

私が間違っていることについてのアイデアはありますか?

4

1 に答える 1

4

私は置き換えます:

after_value = user.admin

と:

after_value = user.reload.admin
于 2012-08-31T19:29:34.700 に答える