67 lines
1.9 KiB
Ruby
67 lines
1.9 KiB
Ruby
require 'rails_helper'
|
|
|
|
feature 'Images' do
|
|
|
|
background do
|
|
admin = create(:administrator)
|
|
login_as(admin.user)
|
|
end
|
|
|
|
context 'Index' do
|
|
scenario 'Answer with no images' do
|
|
answer = create(:poll_question_answer,
|
|
question: create(:poll_question))
|
|
|
|
visit admin_answer_images_path(answer)
|
|
|
|
expect(page).to_not have_css("img[title='']")
|
|
end
|
|
|
|
scenario 'Answer with images' do
|
|
answer = create(:poll_question_answer,
|
|
question: create(:poll_question))
|
|
image = create(:image, imageable: answer)
|
|
|
|
visit admin_answer_images_path(answer)
|
|
|
|
expect(page).to have_css("img[title='#{image.title}']")
|
|
expect(page).to have_content(image.title)
|
|
end
|
|
end
|
|
|
|
scenario 'Add image to answer', :js do
|
|
answer = create(:poll_question_answer,
|
|
question: create(:poll_question))
|
|
image = create(:image)
|
|
|
|
visit admin_answer_images_path(answer)
|
|
expect(page).to_not have_css("img[title='clippy.jpg']")
|
|
expect(page).to_not have_content('clippy.jpg')
|
|
|
|
visit new_admin_answer_image_path(answer)
|
|
imageable_attach_new_file(image, Rails.root.join('spec/fixtures/files/clippy.jpg'))
|
|
click_button 'Save image'
|
|
|
|
expect(page).to have_css("img[title='clippy.jpg']")
|
|
expect(page).to have_content('clippy.jpg')
|
|
end
|
|
|
|
scenario 'Remove image from answer', :js do
|
|
answer = create(:poll_question_answer,
|
|
question: create(:poll_question))
|
|
image = create(:image, imageable: answer)
|
|
|
|
visit admin_answer_images_path(answer)
|
|
expect(page).to have_css("img[title='#{image.title}']")
|
|
expect(page).to have_content(image.title)
|
|
|
|
accept_confirm 'Are you sure?' do
|
|
click_link 'Remove image'
|
|
end
|
|
|
|
expect(page).to_not have_css("img[title='#{image.title}']")
|
|
expect(page).to_not have_content(image.title)
|
|
end
|
|
|
|
end
|