2011-06-13 2 views
2

오류 (1 0) 인수의 잘못 # 말한다 "하면 ArgumentError : 인수의 잘못 # (1 0)"에 대한 :하면 ArgumentError : 레일 유닛 테스트

def test_auth 
    #check that we can login we a valid Usuario 
    assert_equal @bob, Usuario.autenticar("bob", "test") 
end 

그러나, autenticar 2 개 인자를 가지고 간다 :

def self.autenticar(usuario, clave) 
    u=find(:first, :conditions=>["usuario = ?", usuario]) 
    return nil if u.nil? 
    return u if Usuario.encrypt(clave, u.salt)==u.clave 
    nil 
end 

무슨 일입니까?

+1

오류의 원인은 무엇입니까? 0 * 1은 1 인수가 필요하지만 0이 주어 지므로 'autenticar'호출이되지 않을 것임을 의미합니다. – mikej

+1

분명히이 줄에 오류가 발생합니다 : Usuario.encrypt (clave, u.salt) == u.clave를 반환하면 – tiiin4

+2

'u.salt' 또는'u.clave'처럼 들리는데 실제로는 적어도 하나의 매개 변수. – Kai

답변

0

주석 섹션에서 언급했듯이 에있는 방법 clave은 인수가 필요하며 하나도 가져 오지 않았습니다.