Question

Je suis en train d'écrire test assert de base:

def assert_session_has ( sessionvar )
    return assert_not_nil session[:sessionvar]
end

quand je compile:

def test_auth_bob
    #some setup and other validation methods
    assert_not_nil session[user]
    #more validations...
end

Je reçois l'erreur suivante:

test_auth_bob(UserControllerTest):
NameError: undefined local variable or method `user' for #<UserControllerTest:0x3460c28>
/test/functional/user_controller_test.rb:23:in `test_auth_bob'

Toutes les idées?

Était-ce utile?

La solution

Vous avez perdu deux points. Aussi douloureux que cela puisse paraître, certaines personnes ne remarquent même pas.

def test_auth_bob
    #some setup and other validation methods
    assert_not_nil session[:user]
    #more validations...
end

Sans: l'utilisateur fait référence à une variable ou une méthode, avec un utilisateur du côlon est le symbole utilisateur. Ce poste sur Internet au sujet des symboles semble expliquer plus ... mais je l'ai pas lu. Je suis d'être appelé loin de l'ordinateur par un épisode émouvant passionnant mais lent du fil. Il est bon.

Autres conseils

Où déclarez-vous user dans votre fonction test_auth_bob? L'interprète se plaint que le symbole est indéfini.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top