2014-12-22 29 views
0

在我的rails應用程序中,我詢問用戶他們最喜歡的顏色。他們選擇一個值(十六進制輸入)。顏色保存,然後爲背景顏色元素應用到一個預定義的CSS類(如#D2D2D2):使用rspec/capybara來測試該CSS元素已收到正確的屬性?

<html> 
<body> 
    <style> 
    .favorite_color { background-color: #D2D2D2; } /* updated dynamically <%= @user.favorite_color %> */ 
    </style> 
    <div class="favorite_color">My favorite color</div> 
    <div class="some_content">Some content</div> 
    <div class="favorite_color">My favorite color again</div> 
</body> 

一切工作正常,但我現在想知道如何測試的無論div出現在哪裏,保存的值都將作爲背景色正確應用。

我曾嘗試(使用RSpec的和水豚): p page.find( 'favorite_color')[:風格]

但我最終零作爲輸出。有沒有人對我如何獲得背景顏色有任何建議,以便我可以測試它是否正確應用?

謝謝!

回答

0

你應該填寫它,並期待它在那裏,當你重新瀏覽頁面。

fill_in 'the_id_of_the_input_field', with: '#D2D2D2' 

expect(page).to have_field('the_id_of_the_input_field', with: '#D2D2D2') 

,或者如果你喜歡使用類

fill_in '.favorite_color', with: '#D2D2D2' 

expect(page).to have_field('.favorite_color', with: '#D2D2D2') 
相關問題