Sha256: 10e714037cfd4f809b101bd108c1654fedd4596ca86c82685b58a152f740ca18
Contents?: true
Size: 1.14 KB
Versions: 4
Compression:
Stored size: 1.14 KB
Contents
require 'byebug/history' module Byebug # # Custom interface for easier assertions # class TestInterface < Interface attr_reader :input_queue, :output_queue, :error_queue, :confirm_queue, :history attr_accessor :test_block def initialize @input_queue, @output_queue, @error_queue = [], [], [] @confirm_queue, @command_queue, @history = [], [], History.new end def errmsg(*args) @error_queue.push(*args) end def read_command(*) if @input_queue.empty? if test_block test_block.call self.test_block = nil end else result = @input_queue.shift result.is_a?(Proc) ? result.call : result end end def puts(*args) @output_queue.push(*args) end def confirm(message) @confirm_queue << message read_command message end def close end def inspect [ "input_queue: #{input_queue.inspect}", "output_queue: #{output_queue.inspect}", "error_queue: #{error_queue.inspect}", "confirm_queue: #{confirm_queue.inspect}" ].join("\n") end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
byebug-3.4.2 | test/support/test_interface.rb |
byebug-3.4.1 | test/support/test_interface.rb |
byebug-3.4.0 | test/support/test_interface.rb |
byebug-3.3.0 | test/support/test_interface.rb |