Sha256: 4c3c8bc7abc4af1a6198ef3150f95b7b1b583c5e34009cbedc125263eaa96fa4

Contents?: true

Size: 1.52 KB

Versions: 1

Compression:

Stored size: 1.52 KB

Contents

# frozen_string_literal: true
require 'spec_helper'
require 'cucumber/rake/task'
require 'rake'

module Cucumber
  module Rake
    describe Task::ForkedCucumberRunner do
      let(:libs) { ['lib'] }
      let(:binary) { Cucumber::BINARY }
      let(:cucumber_opts) { ['--cuke-option'] }
      let(:feature_files) { ['./some.feature'] }

      context 'when running with bundler' do
        let(:bundler) { true }

        subject { Task::ForkedCucumberRunner.new(
            libs, binary, cucumber_opts, bundler, feature_files) }

        it 'does use bundler if bundler is set to true' do
          expect(subject.use_bundler).to be true
        end

        it 'uses bundle exec to find cucumber and libraries' do
          expect(subject.cmd).to eq [Cucumber::RUBY_BINARY,
            '-S',
            'bundle',
            'exec',
            'cucumber',
            '--cuke-option'] + feature_files
        end
      end

      context 'when running without bundler' do
        let(:bundler) { false }

        subject { Task::ForkedCucumberRunner.new(
            libs, binary, cucumber_opts, bundler, feature_files) }

        it 'does not use bundler if bundler is set to false' do
          expect(subject.use_bundler).to be false
        end

        it 'uses well known cucumber location and specified libraries' do
          expect(subject.cmd).to eq [Cucumber::RUBY_BINARY,
            '-I',
            '"lib"',
            "\"#{Cucumber::BINARY}\"",
            '--cuke-option'] + feature_files
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
cucumber-3.0.0.pre.2 spec/cucumber/rake/forked_spec.rb