Sha256: 01c46cb5c1cd3e87f165467a4c5abae9da9c633f2c62553f221b3c3c680b9302

Contents?: true

Size: 1.37 KB

Versions: 3

Compression:

Stored size: 1.37 KB

Contents

RSpec.describe Mutant::Result::Env do
  let(:object) do
    described_class.new(
      env:              double('Env', config: config),
      runtime:          double('Runtime'),
      subject_results:  subject_results
    )
  end

  let(:config) { double('Config', fail_fast: fail_fast) }

  describe '#continue?' do
    subject { object.continue? }

    context 'config sets fail_fast flag' do
      let(:fail_fast) { true }

      context 'when mutation results are empty' do
        let(:subject_results) { [] }

        it { should be(true) }
      end

      context 'with failing mutation result' do
        let(:subject_results) { [double('Subject Result', success?: false)] }

        it { should be(false) }
      end

      context 'with successful mutation result' do
        let(:subject_results) { [double('Subject Result', success?: true)] }

        it { should be(true) }
      end

      context 'with failed and successful mutation result' do
        let(:subject_results) do
          [
            double('Subject Result', success?: true),
            double('Subject Result', success?: false)
          ]
        end

        it { should be(false) }
      end
    end

    context 'config does not set fail fast flag' do
      let(:fail_fast)       { false                     }
      let(:subject_results) { double('subject results') }

      it { should be(true) }
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
mutant-0.7.3 spec/unit/mutant/result/env_spec.rb
mutant-0.7.2 spec/unit/mutant/result/env_spec.rb
mutant-0.7.1 spec/unit/mutant/result/env_spec.rb