2016-07-07 2 views
3

을 작성합니다. 아래의 코드를 사용하여 Rspec 요청 사양의 Devise 경로를 통해 사용자의 전자 메일 업데이트를 테스트하기 만하면됩니다. 그것은 나에게 오류를주고있다 : ActionController::UnknownFormat:테스트 Rspec을 사용하여 사용자 등록 정보를 업데이트하고 ActionController :: UnknownFormat : 오류

여기
require 'rails_helper' 

RSpec.describe "UsersEdits", type: :request do 
    let(:user) { FactoryGirl.create(:user) } 

    it "my test" do 
    email = "[email protected]" 

    params = { "user[email]" => email, "user[current_password]" => 'foobar' } 
    put user_registration_path(user), params 

    user.reload 
    expect(user.email).to eq(email) 
    end 
end 

오류입니다 :

Failure/Error: patch user_registration_path(user), params 

ActionController::UnknownFormat: 
    ActionController::UnknownFormat 

이 어떤 도움을 크게 감상 할 수, 감사합니다!

답변

1

그냥 내 자신을 추적했습니다.

user_registration_path(user)"/users.980190962"을 생성하여 ActionController::UnknownFormat 오류가 발생합니다. 일부 컨트롤러 설정에서는 "https://stackoverflow.com/users/980790962"을 패치 할 수 있지만 "/users" 패치 만 직접 작성하십시오. 필자는 로그인 한 사용자가 누구이며 사용자 ID가 필요하지 않은 사용자를 고의적으로 고소하고 있습니다. 그래서 그 대신 :

patch user_registration_path, params: { user: { 
     .... 
     } } 

나에 대한 RSpec에 :

put user_registration_path, params