2014-11-04 13 views
5

Sto seguendo "Ruby on Rails Tutorial: impara sviluppo Web" di Michael Hartl e sto creando i test che controllano il nome e l'e-mail di un utente per la validità della lunghezza (nome come massimo di 50 caratteri, email come 255 caratteri). Il contenuto di test/helpers/application_helper_test.rb sono:Errore MiniTest: "NameError: costante non inizializzata"

require 'test_helper' 

class ApplicationHelperTest < ActionView::TestCase 
    test "full_title_helper" do 
    assert_equal full_title,   FILL_IN 
    assert_equal full_title("Help"), FILL_IN 
    end 
end 

Al esecuzione bundle exec rake test, tutti i test passano, ma vedo il seguente messaggio contrassegnato come un errore alla fine:

ERROR["test_full_title_helper", ApplicationHelperTest, 1.820016791] 
test_full_title_helper#ApplicationHelperTest (1.82s) 
NameError:   NameError: uninitialized constant ApplicationHelperTest::FILL_IN 
     test/helpers/application_helper_test.rb:5:in `block in <class:ApplicationHelperTest>' 
    test/helpers/application_helper_test.rb:5:in `block in <class:ApplicationHelperTest>' 

Delle idee come risolvere Questo?

+3

mi immagino 'FILL_IN' è destinato a essere riempito come una sorta di esercizio o di qualcosa, non abituato alla lettera. –

+1

Esattamente. Se leggi attentamente il messaggio di errore, Ruby ti dice che non sa cosa sia FILL_IN'. Leggi la descrizione dell'esercizio https://www.railstutorial.org/book/filling_in_the_layout#sec-layout_exercises –

+1

Ragazzi, avete assolutamente ragione, questo era il problema. Ho sostituito FILL_IN con "App di esempio tutorial di Ruby on Rails" e "App campione di tutorial di Ruby on Rails" che ha risolto l'errore. Grazie! – hworth

risposta

7

Risulta che il problema è FILL_IN non è il titolo letterale (ovviamente), quindi deve essere sostituito con "Guida | App di esempio tutorial di Ruby on Rails" e "App di esempio di tutorial su Ruby on Rails" rispettivamente. -Grazie a Nick Veys e p11y per questa risposta.

0

Le costanti FILL_IN possono essere sostituiti da: nome,: e-mail

class User < ActiveRecord::Base 
#... 
has_many :microposts 
validates :name, presence: true 
validates :email, presence: true 
#... 
Problemi correlati