我使用mini-test来测试框架。我尝试编写模型测试。
class Person
include Mongoid::Document
field :provider, type:String
field :user_id, type:String
field :name, type:String
def self.create_with_omniauth(auth)
create! do |person|
person.provider = auth["provider"]
person.user_id = auth["uid"]
#user.name = auth["info"]["name"]
end
end
def self.find_by_provider_and_uid(provider, uid)
where(provider: provider, user_id: uid).first
end
end
以上是我的模特。我想写一个测试,控制人是否有“create_with_omniauth方法”。
我该怎么写这个测试。我等你的想法?提前谢谢。
答案 0 :(得分:2)
要完成此操作,您可以使用assert_respond_to。
一个完整的例子:
class PersonTest < MiniTest::Unit::TestCase
def test_responds_to_create_with_omniauth
assert_respond_to(Person, :create_with_omniauth)
end
end
我个人的意见是测试方法的行为,而不是断言它是否存在,但我会把它留给你。