Sha256: 5dc98e5270a99ad2746071cdc44edd3a0c75497fbfb7e0bb7b5d6e26cf6a57e5

Contents?: true

Size: 800 Bytes

Versions: 1

Compression:

Stored size: 800 Bytes

Contents

require 'spec_helper'

describe 'Veritas::Optimizable::ClassMethods#optimizer' do
  subject { object.optimizer }

  let(:object) { Class.new { include Optimizable, Immutable } }

  context 'when the optimizer is not set' do
    it { should be_nil }
  end

  context 'when the optimizer is set' do
    let(:optimizer) { mock('Optimizer') }

    before do
      object.optimizer = optimizer
    end

    it { should equal(optimizer) }
  end
end

describe 'Veritas::Optimizable::ClassMethods#optimizer=' do
  subject { object.optimizer = optimizer }

  let(:optimizer) { mock('Optimizer')                            }
  let(:object)    { Class.new { include Optimizable, Immutable } }

  it 'sets the optimizer' do
    expect { subject }.to change { object.optimizer }.from(nil).to(optimizer)
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
veritas-0.0.2 spec/unit/veritas/optimizable/class_methods/optimizer_spec.rb