Sha256: 28df729f956a8a946b28d7557305cc93adba2655703b05993423e764f1a75493

Contents?: true

Size: 828 Bytes

Versions: 1

Compression:

Stored size: 828 Bytes

Contents

# encoding: utf-8

require 'spec_helper'

describe Function::Proposition, '#inverse' do
  subject { object.inverse }

  let(:described_class)  { Class.new(Function::Proposition)                     }
  let(:inverse_class)    { mock('Inverse Class', :instance => inverse_instance) }
  let(:inverse_instance) { mock('Inverse Instance')                             }
  let(:object)           { described_class.new                                  }

  before do
    described_class.stub(:inverse => inverse_class)
  end

  it 'calls .inverse on the class' do
    described_class.should_receive(:inverse).with(no_args).and_return(inverse_class)
    subject
  end

  it 'calls .instance on the inverse class' do
    inverse_class.should_receive(:instance).with(no_args)
    subject
  end

  it { should equal(inverse_instance) }
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
axiom-0.1.0 spec/unit/axiom/function/proposition/inverse_spec.rb