Sha256: 8ef7d3edf5019ea56127ead74a0934d71ff1d72392c99c982e9e8c7c6d64fe5c
Contents?: true
Size: 1.09 KB
Versions: 1
Compression:
Stored size: 1.09 KB
Contents
require_relative '../parallel_tests' require 'tempfile' module Zeus::ParallelTests class Worker def self.command(suite) "ruby #{__FILE__} #{suite}" end def initialize(suite, env, argv) @env = env @argv = argv @suite = suite end def call system %{zeus parallel_#{@suite}_worker #{parallel_tests_attributes}} args_file.unlink $?.to_i end private def parallel_tests_attributes [test_env_number.to_s, @env['PARALLEL_TEST_GROUPS'], args_file.path].join(' ') end def args_file @args_file ||= begin Tempfile.new("rspec_args").tap do |file| @argv.each do |arg| file.puts arg end file.close end end end def test_env_number @env['TEST_ENV_NUMBER'] != "" && @env['TEST_ENV_NUMBER'] || 1 end end end if $PROGRAM_NAME == __FILE__ argv = ARGV.dup exit Zeus::ParallelTests::Worker.new(argv.shift, ENV, argv).call.to_i end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
zeus-parallel_tests-0.2.0.beta1 | lib/zeus/parallel_tests/worker.rb |