微炭酸ログ

Ruby や Rails を中心に。

【RSpec】入力フィールドやボタンが非活性になっているか検証する

入力フィールドやボタンに disabled 属性がついているかを検証するには、以下のように書きます。

it 'フォームに入力できないこと' do
  # ...

  expect(page).to have_field '名前', disabled: true
  expect(page).to have_button '登録する', disabled: true
end

Bootstrap の class="disabled" をつけたリンクボタンの場合は、disabled: true では検証できないので、以下のように書きます。

it '削除ボタンが非活性になっていること' do
  # ...

  expect(find_link('削除する')['class']).to eq('btn btn-outline-danger mt-3 disabled')
end

参考