aboutsummaryrefslogtreecommitdiff
path: root/test/functional/editor/count_spec.lua
blob: d158497cb8ff7f9357e6da5b30e57373dd523286 (plain) (blame)
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
local t = require('test.testutil')
local n = require('test.functional.testnvim')()

local eq = t.eq
local eval = n.eval
local feed = n.feed
local clear = n.clear
local command = n.command

describe('v:count/v:count1', function()
  before_each(function()
    clear()

    command('map <silent> _x :<C-u>let g:count = "v:count=". v:count .", v:count1=". v:count1<CR>')
  end)

  describe('in cmdwin', function()
    it('equal 0/1 when no count is given', function()
      feed('q:_x')
      eq('v:count=0, v:count1=1', eval('g:count'))
    end)

    it('equal 2/2 when count of 2 is given', function()
      feed('q:2_x')
      eq('v:count=2, v:count1=2', eval('g:count'))
    end)
  end)

  describe('in normal mode', function()
    it('equal 0/1 when no count is given', function()
      feed('_x')
      eq('v:count=0, v:count1=1', eval('g:count'))
    end)

    it('equal 2/2 when count of 2 is given', function()
      feed('2_x')
      eq('v:count=2, v:count1=2', eval('g:count'))
    end)
  end)
end)