Sha256: ea4a057076fb6597866efcfcb1910ea89d938c59b3f84fa1638af9fd20971b64

Contents?: true

Size: 935 Bytes

Versions: 10

Compression:

Stored size: 935 Bytes

Contents

require 'rib/test'
require 'rib/test/multiline'
require 'rib/more/multiline_history'

describe Rib::MultilineHistory do
  paste :rib
  paste :setup_multiline

  def check str, err=nil
    @shell.history.clear
    with_history(str, err)

    setup_shell

    @shell.history.clear
    @shell.history << 'old history'
    with_history(str, err, 'old history')
  end

  def with_history str, err, *prefix
    lines = str.split("\n")
    lines[0...-1].inject([]){ |result, line|
      input(line)
      @shell.loop_once
      result << line
      @shell.history.to_a.should.eq prefix + result
      result
    }
    input_done(lines.last, err)
    history = if lines.size == 1
                lines.first
              else
                "\n#{lines.join("\n")}"
              end
    @shell.history.to_a.should.eq prefix + [history]
  end

  test_for Rib::History, Rib::Multiline, Rib::MultilineHistory do
    paste :multiline
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
rib-1.5.1 test/more/test_multiline_history.rb
rib-1.5.0 test/more/test_multiline_history.rb
rib-1.4.0 test/more/test_multiline_history.rb
rib-1.3.1 test/more/test_multiline_history.rb
rib-1.3.0 test/more/test_multiline_history.rb
rib-1.2.91 test/more/test_multiline_history.rb
rib-1.2.9 test/more/test_multiline_history.rb
rib-1.2.8 test/more/test_multiline_history.rb
rib-1.2.7 test/more/test_multiline_history.rb
rib-1.2.6 test/more/test_multiline_history.rb