Sha256: 2f27587a06faab9968b97f8644d8794677f8368cd2981a591dcd794deda6cc05

Contents?: true

Size: 1.28 KB

Versions: 15

Compression:

Stored size: 1.28 KB

Contents

require "rails_helper"

describe Dorsale::Alexandrie::AttachmentsController, type: :controller do
  routes { Dorsale::Engine.routes }

  let(:uploaded_file){
    path = Rails.root.join("../../spec/files/pdf.pdf").to_s
    Rack::Test::UploadedFile.new(path, "application/pdf")
  }

  let(:valid_attributes){
    attachable = DummyModel.create!(name: "A")

    {
      :attachable_id   => attachable.id,
      :attachable_type => attachable.class.to_s,
      :file            => uploaded_file,
    }
  }

  describe "create" do
    it "should create attachment" do
      post :create, attachment: valid_attributes, back_url: "/"
      expect(assigns(:attachment)).to be_persisted
    end

    it "should redirect to back_url" do
      post :create, attachment: valid_attributes, back_url: "/"
      expect(response).to redirect_to("/")
    end
  end

  describe "destroy" do
    it "should delete attachment" do
      attachment = create(:alexandrie_attachment)
      expect {
        delete :destroy, id: attachment, back_url: "/"
      }.to change(::Dorsale::Alexandrie::Attachment, :count).by(-1)
    end

    it "should redirect to back_url" do
      attachment = create(:alexandrie_attachment)
      delete :destroy, id: attachment, back_url: "/"
      expect(response).to redirect_to("/")
    end
  end
end

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
dorsale-2.1.13 spec/controllers/dorsale/alexandrie/attachments_controller_spec.rb
dorsale-2.1.12 spec/controllers/dorsale/alexandrie/attachments_controller_spec.rb
dorsale-2.1.11 spec/controllers/dorsale/alexandrie/attachments_controller_spec.rb
dorsale-2.1.10 spec/controllers/dorsale/alexandrie/attachments_controller_spec.rb
dorsale-2.1.9 spec/controllers/dorsale/alexandrie/attachments_controller_spec.rb
dorsale-2.1.8 spec/controllers/dorsale/alexandrie/attachments_controller_spec.rb
dorsale-2.1.7 spec/controllers/dorsale/alexandrie/attachments_controller_spec.rb
dorsale-2.1.6 spec/controllers/dorsale/alexandrie/attachments_controller_spec.rb
dorsale-2.1.5 spec/controllers/dorsale/alexandrie/attachments_controller_spec.rb
dorsale-2.1.4 spec/controllers/dorsale/alexandrie/attachments_controller_spec.rb
dorsale-2.1.3 spec/controllers/dorsale/alexandrie/attachments_controller_spec.rb
dorsale-2.1.2 spec/controllers/dorsale/alexandrie/attachments_controller_spec.rb
dorsale-2.1.1 spec/controllers/dorsale/alexandrie/attachments_controller_spec.rb
dorsale-2.1.0 spec/controllers/dorsale/alexandrie/attachments_controller_spec.rb
dorsale-2.0.1 spec/controllers/dorsale/alexandrie/attachments_controller_spec.rb