Sha256: 2c5e33f0fca28f722c3c05b29afefdab5db17ce33796e39c32aa4e655030dc9d

Contents?: true

Size: 1.04 KB

Versions: 7

Compression:

Stored size: 1.04 KB

Contents

# encoding: utf-8

describe Attestor::InvalidError do

  let(:object) { double :object }
  subject      { described_class.new object }

  describe ".new" do

    it "creates a RuntimeError" do
      expect(subject).to be_kind_of RuntimeError
    end

    it "creates immutable object" do
      expect(subject).to be_frozen
    end

    it "doesn't freeze object" do
      subject
      expect(object).not_to be_frozen
    end

    it "doesn't freeze messages" do
      messages = %i(foo bar)
      described_class.new object, messages

      expect(messages).not_to be_frozen
    end

  end # describe .new

  describe "#object" do

    it "is initialized" do
      expect(subject.object).to be_eql object
    end

  end # describe #object

  describe "#messages" do

    it "returns an empty array" do
      expect(subject.messages).to eq []
    end

    it "can be initialized" do
      subject = described_class.new(object, %w(cad cam))
      expect(subject.messages).to eq %w(cad cam)
    end

  end # describe #messages

end # describe Attestor::ValidError

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
attestor-2.2.1 spec/tests/invalid_error_spec.rb
attestor-2.2.0 spec/tests/invalid_error_spec.rb
attestor-2.1.0 spec/tests/invalid_error_spec.rb
attestor-2.0.0 spec/tests/invalid_error_spec.rb
attestor-1.0.0 spec/tests/invalid_error_spec.rb
attestor-0.4.0 spec/tests/invalid_error_spec.rb
attestor-0.3.0 spec/tests/invalid_error_spec.rb