diff --git a/spec/features/asciicast_spec.rb b/spec/features/asciicast_spec.rb index a6d02b4..951bdc1 100644 --- a/spec/features/asciicast_spec.rb +++ b/spec/features/asciicast_spec.rb @@ -15,4 +15,15 @@ feature "Asciicast page", :js => true do expect(page).to have_selector('.cinema .play-button') end + scenario 'Visiting as guest when asciicast is private' do + asciicast.update(private: true) + + visit asciicast_path(asciicast) + + expect(page).to have_content('the title') + expect(page).to have_link('aaron') + expect(page).to have_link('Embed') + expect(page).to have_selector('.cinema .play-button') + end + end diff --git a/spec/features/playback_spec.rb b/spec/features/playback_spec.rb index 2b30cb4..6fe924a 100644 --- a/spec/features/playback_spec.rb +++ b/spec/features/playback_spec.rb @@ -1,8 +1,6 @@ require 'rails_helper' -describe 'Asciicast playback', :js => true, :slow => true do - - let(:asciicast) { create(:asciicast) } +describe 'Asciicast playback', js: true, slow: true do describe "from fixture" do before do @@ -14,10 +12,24 @@ describe 'Asciicast playback', :js => true, :slow => true do Capybara.default_wait_time = @old_wait_time end - it "is successful" do - visit asciicast_path(asciicast, speed: 5) - find(".start-prompt .play-button").click - expect(page).to have_css('.time-remaining', visible: false, text: '-00:0') + context "for public asciicast" do + let(:asciicast) { create(:asciicast, private: false) } + + it "is successful" do + visit asciicast_path(asciicast, speed: 5) + find(".start-prompt .play-button").click + expect(page).to have_css('.time-remaining', visible: false, text: '-00:0') + end + end + + context "for private asciicast" do + let(:asciicast) { create(:asciicast, private: true) } + + it "is successful" do + visit asciicast_path(asciicast, speed: 5) + find(".start-prompt .play-button").click + expect(page).to have_css('.time-remaining', visible: false, text: '-00:0') + end end end