2014-11-04 17 views
5

Podążam za "Ruby on Rails Tutorial: Learn Web Development" Michaela Hartla i tworzę testy sprawdzające nazwę użytkownika i adres e-mail pod kątem ważności długości (nazwa maksimum 50 znaków, e-mail jako 255 znaków). Zawartość test/helpers/application_helper_test.rb są:Błąd MiniTest: "NameError: niezainicjowana stała"

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 

Po uruchomieniu bundle exec rake test, wszystkie testy przechodzą, ale widzę następujący komunikat oznaczony jako błąd na końcu:

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>' 

Jakieś pomysły jak to naprawić to?

+3

Wyobrażam sobie 'FILL_IN' ma być wypełniona jako pewnego rodzaju ćwiczeń czy coś, nie używany dosłownie. –

+1

Dokładnie. Jeśli uważnie przeczytasz komunikat o błędzie, Ruby powie Ci, że nie wie, co to jest "FILL_IN". Przeczytaj opis ćwiczenia https://www.railstutorial.org/book/filling_in_the_layout#sec-layout_exercises –

+1

Masz absolutną rację, to był problem. Wymieniłem FILL_IN na "Przykładowy przykład aplikacji Ruby on Rails" i "Pomoc | Ruby na Rails Tutorial Sample App", który rozwiązał ten błąd. Dzięki! – hworth

Odpowiedz

7

Okazało się, że FILL_IN nie jest dosłownym tytułem (oczywiście), więc należy go zastąpić przez "Pomoc | Ruby na Rails Tutorial Sample App" i "Ruby on Rails Tutorial Sample App" odpowiednio. -Dzięki Nick Veys i p11y za tę odpowiedź.

0

stałych FILL_IN może być zastąpiony przez: nazwy: email

class User < ActiveRecord::Base 
#... 
has_many :microposts 
validates :name, presence: true 
validates :email, presence: true 
#... 
Powiązane problemy