$LOAD_PATH.unshift File.expand_path('../../lib', __FILE__) ENV['TERM'] = 'xterm' # for some CI environments require 'reline' require 'test/unit' begin require 'rbconfig' rescue LoadError end begin # This should exist and available in load path when this file is mirrored to ruby/ruby and running at there if File.exist?(File.expand_path('../../tool/lib/envutil.rb', __dir__)) require 'envutil' end rescue LoadError end module Reline class < expected but was <#{chunk.inspect} (#{chunk.encoding.inspect})> in EOM end def assert_line_index(expected) assert_equal(expected, @line_editor.instance_variable_get(:@line_index)) end def assert_whole_lines(expected) assert_equal(expected, @line_editor.whole_lines) end def assert_key_binding(input, method_symbol, editing_modes = [:emacs, :vi_insert, :vi_command]) editing_modes.each do |editing_mode| @config.editing_mode = editing_mode assert_equal(method_symbol, @config.editing_mode.default_key_bindings[input.bytes]) end end end