Sha256: 817e43a382421602213cd8023fa7e7fc7973d434c0b8ebe28dce36a96eda9489
Contents?: true
Size: 1.58 KB
Versions: 10
Compression:
Stored size: 1.58 KB
Contents
# frozen_string_literal: true require 'tempfile' describe 'Allow exhibit admins to import and export content from an exhibit', type: :feature, js: true do let(:exhibit) { FactoryBot.create(:exhibit) } let(:user) { FactoryBot.create(:exhibit_admin, exhibit: exhibit) } before do allow(Spotlight::ReindexExhibitJob).to receive(:perform_later).and_return(true) if Rails.version < '6' login_as user end pending 'should allow admins to export content from an exhibit' do pending(%(There's not really any good way to test the contents of a downloaded file with Poltergeist (which is now necessary since we've moved the export option behind a bootstrap tab))) visit spotlight.exhibit_dashboard_path(exhibit) click_link 'General' within('.nav-tabs') do click_link 'Export data' end within('#export') do click_link 'Export data' end data = JSON.parse(page.body) expect(data).to include 'title', 'searches', 'home_page' end it 'allows admins to import content into an exhibit' do visit spotlight.exhibit_dashboard_path(exhibit) click_link 'General' within('.nav-tabs') do click_link 'Import data' end file = Tempfile.new('foo') file.write({ 'title' => 'A better title' }.to_json) file.rewind begin attach_file('file', File.expand_path(file.path)) within('#import') do click_button 'Import data' end ensure file.close file.unlink end expect(page).to have_content 'The exhibit was successfully updated.' expect(page).to have_content 'A better title' end end
Version data entries
10 entries across 10 versions & 1 rubygems