【发布时间】:2014-07-29 18:41:39
【问题描述】:
def self.from_omniauth(auth)
where(auth.slice(:provider, :uid)).first_or_initialize.tap do |partner|
partner.provider = auth.provider
partner.uid = auth.uid
partner.email = auth.info.email || ''
partner.lastname = auth.info.last_name || ''
partner.firstname = (auth.provider == "twitter") ? auth["info"]["name"] : auth.info.first_name
partner.oauth_token = auth.credentials.token || ''
partner.oauth_expires_at = Time.at(auth.credentials.expires_at) if auth.provider == "facebook"
partner.auth_token = partner.auth_token.present? ? partner.auth_token : ''
partner.company_api_access = partner.company_api_access.present? ? partner.company_api_access : "In Progress"
partner.save(:validate => false)
end
end
这是我要添加 Rspect 单元测试的 from_omniauth 方法,那么我该怎么做呢?
我搜索了很多东西,但也包括我不想要的控制器。
我只是想测试一个方法,我该怎么做?
请帮帮我
谢谢
【问题讨论】:
标签: ruby-on-rails-3 rspec capybara rspec-rails