Sha256: 76ea8cb83cc2abe4d313ea582aee94ff271684598a7ff24c0dd871c0dca93216

Contents?: true

Size: 747 Bytes

Versions: 1

Compression:

Stored size: 747 Bytes

Contents

require 'minitest/autorun'
require_relative '../lib/team_effort'
require 'tempfile'

describe TeamEffort do
  describe '#work' do
    it 'performs work in child processes' do
      mutex = Mutex.new
      output_io = Tempfile.new('mumble')
      output = nil
      begin
        data = %w|one two three|
        TeamEffort.work(data) do |item|
          mutex.synchronize do
            output_io.puts Process.pid
            output_io.flush
          end
        end
        output_io.rewind
        output = output_io.read
      ensure
        output_io.close
        output_io.unlink
      end

      lines = output.split(/\n/)
      lines.size.must_equal 3
      lines.each do |line|
        line.must_match /^\d+$/
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
team_effort-0.0.2 test/test_team_effort.rb