2011-03-11 15 views
5

के लिए रुपेक परीक्षण मैं एक एपीआई लिख रहा हूं जो ओएथ प्रदाता भी है। क्या आपके आरएसपीईसी परीक्षण लिखने का कोई अनुशंसित तरीका है?oauth प्रदाता

अपने सभी एंडपॉइंट्स को सुरक्षित रखने के लिए ओथ को सक्षम करने के बाद, आप आरएसपीईसी परीक्षण कैसे लिखते हैं जो प्रमाणीकरण चरण को पारित करेंगे?

उत्तर

6

आप OAuth और OAuth-प्लगइन जवाहरात का उपयोग कर रहे हैं, तो इस पोस्ट आप मदद कर सकते हैं: http://peachshake.com/2010/11/11/oauth-capybara-rspec-headers-and-a-lot-of-pain/


फिर भी, OAuth-प्लगइन मणि मदद से आप अनुकरण कुछ चश्मा जो एक सहायक शामिल उत्पन्न करता है प्रमाणीकरण प्रक्रिया।

इस फाइल पर एक नज़र डालें: https://github.com/pelle/oauth-plugin/blob/v0.4.0.pre4/lib/generators/rspec/templates/controller_spec_helper.rb

आप निम्न विधियों का उपयोग कर सकते हैं आपके अनुरोध पर हस्ताक्षर करने के:

def sign_request_with_oauth(token=nil,options={}) 
    ActionController::TestRequest.use_oauth=true 
    @request.configure_oauth(current_consumer,token,options) 
end 

def two_legged_sign_request_with_oauth(consumer=nil,options={}) 
    ActionController::TestRequest.use_oauth=true 
    @request.configure_oauth(consumer,nil,options) 
end 

def add_oauth2_token_header(token,options={}) 
    request.env['HTTP_AUTHORIZATION'] = "OAuth #{token.token}" 
end 

मेरा सुझाव है कि आप अपने चश्मा के लिए एक सहायक के रूप में इस फ़ाइल को कॉपी करें और संशोधित करने के लिए तदनुसार आपकी जरूरतों के अनुसार।