Sha256: e8b340791703db8e10ca1fa67e754db56360dfac4d840127ae62346d79b89272

Contents?: true

Size: 1.57 KB

Versions: 14

Compression:

Stored size: 1.57 KB

Contents

require 'spec_helper'
include RequestHelpers

describe 'An admin viewing the comments index', js: true do
  let!(:admin) { FactoryGirl.create(:admin) }

  context 'when there is a comment' do
    let!(:comment) { create(:comment) }
    before do
      login(admin)
    end

    it 'should see the comment in a list' do
      visit comments_path
      expect(page).to have_content('Test Comment')
    end

    it 'should be able to delete the comment' do
      visit comments_path
      click_on 'Delete'
      expect(page).not_to have_content('Test Comment')
    end

    %w(approved).each do |action|
      context "if #{action} is false" do
        it "should be able to toggle #{action} to true" do
          visit comments_path
          within('ul#comments') do
            expect(page).to have_selector("a.toggle.#{action}.false")
            page.find("a.toggle.#{action}").click
            expect(comment.reload.send("toggle_#{action}!")).to be_true
            expect(page).to have_selector("a.toggle.#{action}.true")
          end
        end
      end

      context "if #{action} is true" do
        it "should be able to toggle #{action} to false" do
          comment.update_attributes(action.to_sym => true)
          visit comments_path
          within('ul#comments') do
            expect(page).to have_selector("a.toggle.#{action}.true")
            page.find("a.toggle.#{action}").click
            expect(comment.reload.send("toggle_#{action}!")).to be_true
            expect(page).to have_selector("a.toggle.#{action}.false")
          end
        end
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
tenon-1.1.8 spec/features/tenon/comments_spec.rb
tenon-1.1.7 spec/features/tenon/comments_spec.rb
tenon-1.1.6 spec/features/tenon/comments_spec.rb
tenon-1.1.5 spec/features/tenon/comments_spec.rb
tenon-1.1.4 spec/features/tenon/comments_spec.rb
tenon-1.1.3 spec/features/tenon/comments_spec.rb
tenon-1.1.2 spec/features/tenon/comments_spec.rb
tenon-1.1.1 spec/features/tenon/comments_spec.rb
tenon-1.0.76 spec/features/tenon/comments_spec.rb
tenon-1.0.75 spec/features/tenon/comments_spec.rb
tenon-1.0.74 spec/features/tenon/comments_spec.rb
tenon-1.0.73 spec/features/tenon/comments_spec.rb
tenon-1.0.72 spec/features/tenon/comments_spec.rb
tenon-1.0.71 spec/features/tenon/comments_spec.rb