Sha256: e2560eeb582f08b3299bb675d02c48215c91376307c8983232bde4457a52d469

Contents?: true

Size: 874 Bytes

Versions: 12

Compression:

Stored size: 874 Bytes

Contents

require 'spec_helper'

describe Mutant::Runner::Mutation, '#killer' do
  let(:object) { described_class.run(config, mutation) }

  let(:config) do
    mock(
      'Config',
      :reporter => reporter,
      :strategy => strategy
    )
  end

  let(:reporter) { mock('Reporter') }
  let(:mutation) { mock('Mutation') }
  let(:strategy) { mock('Strategy') }
  let(:killer)   { mock('Killer')   }

  subject { object.killer }

  before do
    reporter.stub(:report => reporter)
    strategy.stub(:kill => killer)
  end

  it 'should call configuration to identify strategy' do
    config.should_receive(:strategy).with().and_return(strategy)
    should be(killer)
  end

  it 'should run killer' do
    strategy.should_receive(:kill).with(mutation).and_return(killer)
    should be(killer)
  end

  it { should be(killer) }

  it_should_behave_like 'an idempotent method'
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
mutant-0.3.0.beta13 spec/unit/mutant/runner/mutation/killer_spec.rb
mutant-0.3.0.beta12 spec/unit/mutant/runner/mutation/killer_spec.rb
mutant-0.3.0.beta11 spec/unit/mutant/runner/mutation/killer_spec.rb
mutant-0.3.0.beta10 spec/unit/mutant/runner/mutation/killer_spec.rb
mutant-0.3.0.beta9 spec/unit/mutant/runner/mutation/killer_spec.rb
mutant-0.3.0.beta8 spec/unit/mutant/runner/mutation/killer_spec.rb
mutant-0.3.0.beta7 spec/unit/mutant/runner/mutation/killer_spec.rb
mutant-0.3.0.beta6 spec/unit/mutant/runner/mutation/killer_spec.rb
mutant-0.3.0.beta5 spec/unit/mutant/runner/mutation/killer_spec.rb
mutant-0.3.0.beta4 spec/unit/mutant/runner/mutation/killer_spec.rb
mutant-0.3.0.beta3 spec/unit/mutant/runner/mutation/killer_spec.rb
mutant-0.3.0.beta2 spec/unit/mutant/runner/mutation/killer_spec.rb