Sha256: 80fda4a0e323c0ccad360d2704ff02e3c0c78a6582e0ed9ed4b93b7dcdedcc56

Contents?: true

Size: 950 Bytes

Versions: 25

Compression:

Stored size: 950 Bytes

Contents

# frozen_string_literal: true

module KnapsackPro
  module Runners
    class SpinachRunner < BaseRunner
      def self.run(args)
        ENV['KNAPSACK_PRO_TEST_SUITE_TOKEN'] = KnapsackPro::Config::Env.test_suite_token_spinach

        adapter_class = KnapsackPro::Adapters::SpinachAdapter
        KnapsackPro::Config::Env.set_test_runner_adapter(adapter_class)
        runner = new(adapter_class)

        if runner.test_files_to_execute_exist?
          adapter_class.verify_bind_method_called

          KnapsackPro.tracker.set_prerun_tests(runner.test_file_paths)

          cmd = %Q[KNAPSACK_PRO_RECORDING_ENABLED=true KNAPSACK_PRO_TEST_SUITE_TOKEN=#{ENV['KNAPSACK_PRO_TEST_SUITE_TOKEN']} bundle exec spinach #{args} --features_path #{runner.test_dir} -- #{runner.stringify_test_file_paths}]

          Kernel.system(cmd)
          Kernel.exit(child_status.exitstatus) unless child_status.exitstatus.zero?
        end
      end
    end
  end
end

Version data entries

25 entries across 25 versions & 1 rubygems

Version Path
knapsack_pro-7.14.0 lib/knapsack_pro/runners/spinach_runner.rb
knapsack_pro-7.13.1 lib/knapsack_pro/runners/spinach_runner.rb
knapsack_pro-7.13.0 lib/knapsack_pro/runners/spinach_runner.rb
knapsack_pro-7.12.1 lib/knapsack_pro/runners/spinach_runner.rb
knapsack_pro-7.12.0 lib/knapsack_pro/runners/spinach_runner.rb
knapsack_pro-7.11.0 lib/knapsack_pro/runners/spinach_runner.rb
knapsack_pro-7.10.0 lib/knapsack_pro/runners/spinach_runner.rb
knapsack_pro-7.9.0 lib/knapsack_pro/runners/spinach_runner.rb
knapsack_pro-7.8.2 lib/knapsack_pro/runners/spinach_runner.rb
knapsack_pro-7.8.1 lib/knapsack_pro/runners/spinach_runner.rb
knapsack_pro-7.8.0 lib/knapsack_pro/runners/spinach_runner.rb
knapsack_pro-7.7.0 lib/knapsack_pro/runners/spinach_runner.rb
knapsack_pro-7.6.2 lib/knapsack_pro/runners/spinach_runner.rb
knapsack_pro-7.6.1 lib/knapsack_pro/runners/spinach_runner.rb
knapsack_pro-7.6.0 lib/knapsack_pro/runners/spinach_runner.rb
knapsack_pro-7.1.0 lib/knapsack_pro/runners/spinach_runner.rb
knapsack_pro-7.0.1 lib/knapsack_pro/runners/spinach_runner.rb
knapsack_pro-7.0.0 lib/knapsack_pro/runners/spinach_runner.rb
knapsack_pro-6.0.4 lib/knapsack_pro/runners/spinach_runner.rb
knapsack_pro-6.0.3 lib/knapsack_pro/runners/spinach_runner.rb