# encoding: utf-8 require 'spec_helper' describe Mutant::CLI, '.run' do subject { object.run(argv) } let(:object) { described_class } let(:argv) { double('ARGV') } let(:attributes) { double('Options') } let(:runner) { double('Runner', success?: success) } let(:config) { double('Config') } let(:instance) { double(described_class.name, config: config) } before do described_class.stub(new: instance) Mutant::Runner::Config.stub(run: runner) end context 'when runner is successful' do let(:success) { true } it { should be(0) } it 'should run with attributes' do Mutant::Runner::Config .should_receive(:run) .with(config) .and_return(runner) should be(0) end end context 'when runner fails' do let(:success) { false } it { should be(1) } it 'should run with attributes' do Mutant::Runner::Config .should_receive(:run) .with(config) .and_return(runner) should be(1) end end end