Здравствуйте, записался на курс. При этом ставил галочку на "обучаться с тьютором". На email пришло письмо, о том, что записался на самостоятельное изучение курса. Как выбрать тьютора? |
Опубликован: 27.01.2016 | Доступ: свободный | Студентов: 916 / 58 | Длительность: 23:07:00
Специальности: Архитектор программного обеспечения, Разработчик интернет-проектов
Лекция 5:
Заполнение шаблона
Тестирование маршрутов
С работой которую мы проделали при написании интеграционных тестов для статических страниц, написание тестов для маршрутов довольно простая задача: мы просто заменяем каждое упоминание жестко прописанных адресов на соответствующие именованные маршруты из Таблицы 5.1. Другими словами, мы меняем
visit '/static_pages/about'
на
visit about_path
и так далее для остальных страниц. Результат представлен в Листинге 5.23.
require 'spec_helper' describe "Static pages" do describe "Home page" do it "should have the h1 'Sample App'" do visit root_path expect(page).to have_content('Sample App') end it "should have the base title" do visit root_path expect(page).to have_title("Ruby on Rails Tutorial Sample App") end it "should not have a custom page title" do visit root_path expect(page).not_to have_title('| Home') end end describe "Help page" do it "should have the h1 'Help'" do visit help_path expect(page).to have_content('Help') end it "should have the title 'Help'" do visit help_path expect(page).to have_title("Ruby on Rails Tutorial Sample App | Help") end end describe "About page" do it "should have the h1 'About Us'" do visit about_path expect(page).to have_content('About Us') end it "should have the title 'About Us'" do visit about_path expect(page).to have_title("Ruby on Rails Tutorial Sample App | About Us") end end describe "Contact page" do it "should have the content 'Contact'" do visit contact_path expect(page).to have_content('Contact') end it "should have the title 'Contact'" do visit contact_path expect(page).to have_title("Ruby on Rails Tutorial Sample App | Contact") end end endЛистинг 5.23. Тесты для именованных маршрутов. spec/requests/static_pages_spec.rb
Как обычно, вам следует проверить, что тесты сейчас покраснели:
$ bundle exec rspec spec/requests/static_pages_spec.rb
Кстати, если код в Листинге 5.23 удивляет вас своими повторениями и многословностью, вы не одиноки. Мы отрефакторим эту грязь в красивую драгоценность в Разделе 5.3.4.