RailsApp Rails RSpec Capybara 2018年 12月 21日
require 'rails_helper'
RSpec.describe :Events, type: :system do
include Devise::Test::IntegrationHelpers
teacher_login :hkob
let(:kurasu) { kurasu_factory :hkob2300 }
it 'イベントを作成できること' do
visit kurasu_events_path(kurasu)
click_on '編集モードに入る'
click_on 'イベント作成'
fill_in 'イベント名', with: 'ホール行事'
fill_in '日付', with: '2018/4/7'
fill_in '並び順', with: '1'
click_on '登録'
expect(page).to have_content 'イベントを登録しました.'
end
context '始業のイベントが存在する時' do
let!(:start2300_0406) { event_factory :start2300_0406 }
it 'イベントを編集できること' do
visit kurasu_events_path(kurasu)
click_on '編集モードに入る'
click_on 'イベント編集'
fill_in 'イベント名', with: 'ホームルーム'
click_on '更新'
expect(page).to have_content 'イベントを更新しました.'
expect(page).to have_content 'ホームルーム'
end
it 'イベントを削除できること' do
visit kurasu_events_path(kurasu)
click_on '編集モードに入る'
click_on 'イベント削除'
page.driver.browser.switch_to.alert.accept
expect(page).to have_content 'イベントを削除しました.'
expect(page).not_to have_content '2301'
end
it 'イベントを表示できること' do
visit kurasu_events_path(kurasu)
click_on 'イベント表示'
expect(page).to have_content '始業'
end
end
end
= f.hidden_field :kurasu_id
(前略)
%thead
%tr
- t_ars(Event, %i[name date sort_order]).each do |w|
%th= w
%th= t('control')
%tbody
- @events.each do |e|
%tr
%td= e.name
%td= md_by_date e.date
%td= e.sort_order
(後略)
長くなったので今日はここまで