1

メソッドが定義されていないというエラーが表示されます。エラーは、「spec_helper に mock_auth_hash を定義したモジュールが含まれているにもかかわらず、未定義のローカル変数またはメソッド 'mock_auth_hash'」です。

私は omniauth でいくつかの rspec 統合テストを行おうとしています。このリンクをたどっています https://gist.github.com/kinopyo/1338738

私はこれを理解するのにあまりにも多くの時間を費やしたので、何が問題なのかを理解するのを手伝ってください...多分私はそれに新鮮な目が必要です...

ここに私のファイルがあります

仕様 - >サポート - > omniauth_macros.rb

module OmniauthMacros
    def mock_auth_hash
        OmniAuth.config.mock_auth[:facebook] = {'provider' =>"facebook",
                                        'uid' =>"12345",
                                        'info'=>{'name'=>"John Doe"},
                                        'credentials'=>{'token'=>"AAABBBCCC"}}
    end
end

spec->spec_helper.rb

RSpec.configure do |config|
.
.
.
config.include OmniauthMacros #I've also tried putting config.include(OmniauthMacros)
.
.
end

OmniAuth.config.test_mode = true

spec->requests->game_pages_spec.rb

describe "signing in" do
        before {visit root_url}
        mock_auth_hash
        before {click_button "Login with Facebook"}
        it {should have_selector('h1',text: 'Welcome')}
end
4

1 に答える 1

1

への呼び出しは、またはmock_auth_hash内で行う必要があります。beforeit

于 2013-02-22T05:48:59.110 に答える