2
l'erreur dit "ArgumentError: mauvais Nombre d'arguments (0 pour 1)" pour:ArgumentError: mauvais Nombre d'arguments (0 pour 1) Unité Rails test
def test_auth
#check that we can login we a valid Usuario
assert_equal @bob, Usuario.autenticar("bob", "test")
end
Mais, autenticar prend 2 arguments:
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
Que se passe-t-il?
Avez-vous vérifié quelle ligne est à l'origine de l'erreur? * 0 pour 1 * signifie qu'un argument était attendu mais que 0 a été donné, il est donc peu probable que ce soit l'appel de 'autenticar'. – mikej
apparemment l'erreur se produit sur cette ligne: retourner u si Usuario.encrypt (clave, u.salt) == u.clave – tiiin4
Il semble que soit «u.salt» ou «u.clave» est en fait une fonction qui attend à au moins un paramètre. – Kai