summaryrefslogtreecommitdiff
path: root/test/test_raw.rb
blob: 139b1950f575718cf2a6f7a039fef8ed5fba0168 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# frozen_string_literal: true

require_relative 'lib/common'

# Testing raw mode
class TestRaw < TestInteractive
  def test_raw_mode
    tmux.send_keys %(seq 1000 | #{FZF} --raw --bind ctrl-x:toggle-raw,a:enable-raw,b:disable-raw --gutter '▌' --multi), :Enter
    tmux.until { assert_equal 1000, it.match_count }

    tmux.send_keys 1
    tmux.until { assert_equal 272, it.match_count }

    tmux.send_keys :Up
    tmux.until { assert_includes it, '> 2' }

    tmux.send_keys 'C-p'
    tmux.until do
      assert_includes it, '> 10'
      assert_includes it, '▖ 9'
    end

    tmux.send_keys 'C-x'
    tmux.until do
      assert_includes it, '> 10'
      assert_includes it, '▌ 1'
    end

    tmux.send_keys :Up, 'C-x'
    tmux.until do
      assert_includes it, '> 11'
      assert_includes it, '▖ 10'
    end

    tmux.send_keys 1
    tmux.until { assert_equal 28, it.match_count }

    tmux.send_keys 'C-p'
    tmux.until do
      assert_includes it, '> 101'
      assert_includes it, '▖ 100'
    end

    tmux.send_keys 'C-n'
    tmux.until do
      assert_includes it, '> 11'
      assert_includes it, '▖ 10'
    end

    tmux.send_keys :Tab, :Tab, :Tab
    tmux.until { assert_equal 3, it.select_count }

    tmux.send_keys 'C-x'
    tmux.until do
      assert_equal 1, it.select_count
      assert_includes it, '▌ 110'
      assert_includes it, '>>11'
    end

    tmux.send_keys 'a'
    tmux.until do
      assert_equal 1, it.select_count
      assert_includes it, '>>11'
      assert_includes it, '▖ 10'
    end

    tmux.send_keys 'b'
    tmux.until do
      assert_equal 1, it.select_count
      assert_includes it, '▌ 110'
      assert_includes it, '>>11'
    end
  end
end