2015-01-29 5 views
0

I합니다 (cloud9의 IDE를 사용) 레일 튜토리얼을 통해 갈거야 (3 판 https://www.railstutorial.org/book/) 의 실행되지 뭔가 이상해.레일 튜토리얼 (3 에드) 통합 테스트 때문에 내가 실행 해요 무효 CSS 선택기 (c9.io?)

방금 ​​7 장을 마쳤습니다. 5 장의 내 주장 중 일부가 "유효하지 않은 CSS 선택기로 인해 어설 션이 실행되지 않았기 때문에"실행되지 않는 것을 알게되었습니다.

여기 내 테스트/통합/site_layout_test.rb의 내용이다

내가지고있어 https://github.com/mhartl/sample_app_3rd_edition/blob/master/test/integration/site_layout_test.rb

오류에있는 코드 문자 일치 문자 것으로 보인다

require 'test_helper' 

class SiteLayoutTest < ActionDispatch::IntegrationTest 
    test "layout links" do 
    get root_path 
    assert_template 'static_pages/home' 
    assert_select "a[href=?", root_path, count: 2 
    assert_select "a[href=?", help_path 
    assert_select "a[href=?", about_path 
    assert_select "a[href=?", contact_path 
    assert_select "a[href=?", signup_path 
    end 
end 

DEPRECATION WARNING: The assertion was not run because of an invalid css selector.=======           ] 66% Time: 00:00:00, ETA: 00:00:00 
unexpected '$' after '[:equal, "\"/\""]' (called from block in <class:SiteLayoutTest> at /home/ubuntu/workspace/sample_app/test/integration/site_layout_test.rb:7) 
DEPRECATION WARNING: The assertion was not run because of an invalid css selector. 
unexpected '$' after '[:equal, "\"/help\""]' (called from block in <class:SiteLayoutTest> at /home/ubuntu/workspace/sample_app/test/integration/site_layout_test.rb:8) 
DEPRECATION WARNING: The assertion was not run because of an invalid css selector. 
unexpected '$' after '[:equal, "\"/about\""]' (called from block in <class:SiteLayoutTest> at /home/ubuntu/workspace/sample_app/test/integration/site_layout_test.rb:9) 
DEPRECATION WARNING: The assertion was not run because of an invalid css selector. 
unexpected '$' after '[:equal, "\"/contact\""]' (called from block in <class:SiteLayoutTest> at /home/ubuntu/workspace/sample_app/test/integration/site_layout_test.rb:10) 
DEPRECATION WARNING: The assertion was not run because of an invalid css selector. 
unexpected '$' after '[:equal, "\"/signup\""]' (called from block in <class:SiteLayoutTest> at /home/ubuntu/workspace/sample_app/test/integration/site_layout_test.rb:11) 

재미있는 점은 스타일 시트에서 모든 콘텐츠를 삭제하면 여전히 같은 오류가 발생합니다.

"about_path"(또는 다른 경로 기호)가 $ char를 사용하는 위치에 대한 단서가 없습니다.

나는 분명히 뭔가를 놓치고 있습니다. Google에서 물건을 추적하는 데 도움이되는 경고 텍스트를 Google에 보내면 참조 할 수 없습니다.

답변

4

a [href] 인수에서 대괄호를 닫을 수 없습니다. 귀하의 코드는 다음과 같아야합니다 :

require 'test_helper' 

class SiteLayoutTest < ActionDispatch::IntegrationTest 
    test "layout links" do 
    get root_path 
    assert_template 'static_pages/home' 
    assert_select "a[href=?]", root_path, count: 2 
    assert_select "a[href=?]", help_path 
    assert_select "a[href=?]", about_path 
    assert_select "a[href=?]", contact_path 
    assert_select "a[href=?]", signup_path 
    end      
end 
+0

정확히 내 문제. 나는 그 코드를 적어도 15 분 동안 쳐다 보았고 나는 캐릭터 비교를 통해 캐릭터를하고 있다고 믿었다. –