ruby on rails - rspec not saving to database -
ruby on rails - rspec not saving to database -
i'm trying test login method below, not seem saving data_provider_user database. i've checked using debugger , works until leaves method , goes rspec code, shown below. i've checked see if object valid after save using .valid? , i'm bit lost!
def login require 'twitteroauth' @data_provider_user = dataprovideruser.find(params[:id]) if @data_provider_user.twitter? @request_token = twitteroauth.request_url @data_provider_user.access_token = @request_token.token @data_provider_user.oauth_token_secret = @request_token.secret if @data_provider_user.save debugger redirect_to @request_token.authorize_url end end end test:
it "should update tokens" require 'twitteroauth' twitteroauth.stub(:request_url).and_return(@token) debugger :login, {id: @data_provider_user.id} debugger @data_provider_user.access_token.should_not eq(nil) @data_provider_user.oauth_token_secret.should_not eq(nil) end debugger output:
#<dataprovideruser id: 84, user_id: 63, data_provider_id: 63, username: nil, password: nil, created_at: "2013-02-19 15:21:59", updated_at: "2013-02-19 15:21:59", access_token: nil, update_frequency: nil, oauth_token_secret: nil> #<dataprovideruser id: 84, user_id: 63, data_provider_id: 63, username: nil, password: nil, created_at: "2013-02-19 15:21:59", updated_at: "2013-02-19 15:22:12", access_token: "186553918-seaeo2fcvtyo1x99eh4q4xwvcoyatodcq5f1twqd", update_frequency: nil, oauth_token_secret: "glw2ptuytzfxian1gjbnbp7icboxbi98kluoon7ycvs"> #<dataprovideruser id: 84, user_id: 63, data_provider_id: 63, username: nil, password: nil, created_at: "2013-02-19 15:21:59", updated_at: "2013-02-19 15:21:59", access_token: nil, update_frequency: nil, oauth_token_secret: nil> any help appreciated!!
------ update -------
there nil wrong code, issue rspec not reloading in time. way around use:
@data_provider_user.reload before hand refreshes object, updating values accordingly.
there nil wrong code, issue rspec not reloading in time. way around use:
@data_provider_user.reload before hand refreshes object, updating values accordingly.
ruby-on-rails ruby rspec
Comments
Post a Comment