diff --git a/run.rb b/run.rb index e14d516..4788d46 100644 --- a/run.rb +++ b/run.rb @@ -30,21 +30,30 @@ if !fuzz_function_exists?(file_path) exit(1) end +reader, writer = IO.pipe + fork do - STDOUT.reopen('/dev/null') - STDIN.reopen('/dev/null') + loop do + puts "reading from IO pipe: #{reader.gets.strip}" + end +end - Coverage.start(:all) +loop do + fork do + STDOUT.reopen('/dev/null') + STDIN.reopen('/dev/null') - begin - load(file_path) - fuzz(Random.new.bytes(10)) - rescue => e - puts "Encountered an exception: #{e}" - exit(1) - end + Coverage.start(:all) - p Coverage.result -end + begin + load(file_path) + fuzz(Random.new.bytes(10)) + rescue => e + puts "Encountered an exception: #{e}" + exit(1) + end -Process.wait + writer.puts(Coverage.result.hash) + end + Process.wait +end