Sha256: d44cceb20d0a3036c5e25e5e5abf0ec3775feadb3c517b23b82be9b901392174

Contents?: true

Size: 1.43 KB

Versions: 9

Compression:

Stored size: 1.43 KB

Contents

require 'spec_helper'

module Alchemy
  describe AttachmentsController do
    let(:attachment) { build_stubbed(:attachment) }

    it "should raise ActiveRecord::RecordNotFound for requesting not existing attachments" do
      expect { get :download, id: 0 }.to raise_error(ActiveRecord::RecordNotFound)
    end

    context 'with restricted attachment' do
      before do
        attachment.stub(:restricted?).and_return(true)
        Attachment.stub(:find).and_return(attachment)
      end

      context 'as anonymous user' do
        it "should not be possible to download attachments from restricted pages" do
          get :download, :id => attachment.id
          response.status.should == 302
          response.should redirect_to(Alchemy.login_path)
        end

        it "should not be possible to see attachments from restricted pages" do
          get :show, :id => attachment.id
          response.status.should == 302
          response.should redirect_to(Alchemy.login_path)
        end
      end

      context "as member user" do
        before { sign_in(member_user) }

        it "should be possible to download attachments from restricted pages" do
          get :download, :id => attachment.id
          response.status.should == 200
        end

        it "should be possible to see attachments from restricted pages" do
          get :show, :id => attachment.id
          response.status.should == 200
        end
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
alchemy_cms-3.0.4 spec/controllers/attachments_controller_spec.rb
alchemy_cms-3.0.3 spec/controllers/attachments_controller_spec.rb
alchemy_cms-3.0.2 spec/controllers/attachments_controller_spec.rb
alchemy_cms-3.0.1 spec/controllers/attachments_controller_spec.rb
alchemy_cms-3.0.0 spec/controllers/attachments_controller_spec.rb
alchemy_cms-3.0.0.rc8 spec/controllers/attachments_controller_spec.rb
alchemy_cms-3.0.0.rc7 spec/controllers/attachments_controller_spec.rb
alchemy_cms-3.0.0.rc6 spec/controllers/attachments_controller_spec.rb
alchemy_cms-3.0.0.rc5 spec/controllers/attachments_controller_spec.rb