2012-11-28 2 views
0

Возможно ли провести тест для следующей структуры html?RSpec test link_to inside p tag

<p class="all-jobs"><%= link_to "<< Back to all jobs", jobs_path %></p> 

Я пытался делать это так:

it { should have_selector('p.all-jobs', link: "<< Back to all jobs")} 

Ошибка является:

1) JobPages visit a job page 
Failure/Error: it { should have_selector('p.all-jobs', link: "<< Back to all jobs")} 
    expected css "p.all-jobs" to return something 
# ./spec/requests/job_pages_spec.rb:78:in `block (3 levels) in <top (required)>' 
+0

Что это сообщение об ошибке, которое вы получаете от запуска теста? Это должно работать так, как есть. Уверены ли вы, что у вас есть подходящая тема? Если это не так, убедитесь, что у вас это как 'page.should' – joofsh

+0

У меня это в верхней части страницы: subject {page}. к этому теперь нужно обратиться, используя 'it' – janejanejane

+0

. Тогда вы можете показать сообщение об ошибке при запуске теста? – joofsh

ответ

0

Хорошо, я получил его на работу со следующим:

describe "should have a link to index page" do 
    it { should have_selector('a', title: "<< Back to all jobs", href: jobs_path) } 
end 
+0

Если вы не тестируете ссылку внутри абзаца, а просто наличие самой ссылки, возможно, 'it {should have_link (" << Назад ко всем заданиям ", href: jobs_path)}' будет достаточно. –

+0

Я получаю эту ошибку при использовании has_link: JobPages на странице задания должно иметь ссылку на страницу с индексом Ошибка/ошибка: это {должно быть_link ("<< Вернуться ко всем заданиям", href: jobs_path)} Ожидаемая ссылка "< <Вернуться ко всем заданиям ", чтобы вернуть что-то # ./spec/requests/job_pages_spec.rb:80:in' block (4 levels) в ' – janejanejane