Sha256: 7c532fed6a499a285cca194fe3a5ab9cac708123bddd51c77b9bbc55b8e7da53

Contents?: true

Size: 1.25 KB

Versions: 23

Compression:

Stored size: 1.25 KB

Contents

require 'spec_helper'

RSpec.describe Tessa::Asset::Failure do
  subject(:failure) { described_class.new(args) }
  let(:id) { rand(100) }
  let(:args) {
    { id: id, message: "Test" }
  }

  describe "#initialize" do
    it "sets id to attribute" do
      expect(failure.id).to eq(args[:id])
    end

    it "sets message to attribute" do
      expect(failure.message).to eq(args[:message])
    end
  end

  describe ".factory" do
    let(:message) { 'test message' }
    let(:response) { double(status: 500) }
    subject(:failure) { described_class.factory(id: id, response: response) }


    it "returns instance of Failure" do
      expect(described_class).to receive(:message_from_status)
        .with(response.status).and_return(message)
      expect(failure.id).to eq(id)
      expect(failure.message).to eq(message)
    end
  end

  it "responds like a blank asset" do
    asset = Tessa::Asset.new
    expect(failure.status).to eq(asset.status)
    expect(failure.strategy).to eq(asset.strategy)
    expect(failure.public_url).to eq(asset.public_url)
    expect(failure.private_url).to eq(asset.private_url)
    expect(failure.delete_url).to eq(asset.delete_url)
  end

  describe "#failure?" do
    it "returns true" do
      expect(failure).to be_failure
    end
  end
end

Version data entries

23 entries across 23 versions & 1 rubygems

Version Path
tessa-1.2.3 spec/tessa/asset/failure_spec.rb
tessa-1.2.2 spec/tessa/asset/failure_spec.rb
tessa-2.0 spec/tessa/asset/failure_spec.rb
tessa-1.2.1 spec/tessa/asset/failure_spec.rb
tessa-1.2.0 spec/tessa/asset/failure_spec.rb
tessa-1.1.1 spec/tessa/asset/failure_spec.rb
tessa-1.1.0 spec/tessa/asset/failure_spec.rb
tessa-1.0.2 spec/tessa/asset/failure_spec.rb
tessa-1.0.1 spec/tessa/asset/failure_spec.rb
tessa-1.0.0 spec/tessa/asset/failure_spec.rb
tessa-1.0.0.pre.rc3 spec/tessa/asset/failure_spec.rb
tessa-1.0.0.pre.rc2 spec/tessa/asset/failure_spec.rb
tessa-1.0.0.pre.rc1 spec/tessa/asset/failure_spec.rb
tessa-0.9.2 spec/tessa/asset/failure_spec.rb
tessa-0.9.1 spec/tessa/asset/failure_spec.rb
tessa-0.9.0 spec/tessa/asset/failure_spec.rb
tessa-0.8.0 spec/tessa/asset/failure_spec.rb
tessa-0.7.0 spec/tessa/asset/failure_spec.rb
tessa-0.6.3 spec/tessa/asset/failure_spec.rb
tessa-0.6.2 spec/tessa/asset/failure_spec.rb