aboutsummaryrefslogtreecommitdiff
path: root/vim/bundle/lightline.vim/test/concatenate.vim
blob: 6fd2723a71c1fd2b0b3ed8e3e6f986d7bc9297ab (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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
let s:suite = themis#suite('concatenate')
let s:assert = themis#helper('assert')

function! s:suite.before_each()
  let g:lightline = { 'subseparator': { 'left': '>', 'right': '<' } }
  call lightline#init()
endfunction

function! s:suite.nil()
  call s:assert.equals(lightline#concatenate([], 0), '')
  call s:assert.equals(lightline#concatenate([], 1), '')
endfunction

function! s:suite.one()
  call s:assert.equals(lightline#concatenate(['foo'], 0), 'foo')
  call s:assert.equals(lightline#concatenate(['foo'], 1), 'foo')
endfunction

function! s:suite.two()
  call s:assert.equals(lightline#concatenate(['foo', 'bar'], 0), 'foo > bar')
  call s:assert.equals(lightline#concatenate(['foo', 'bar'], 1), 'foo < bar')
endfunction

function! s:suite.three()
  call s:assert.equals(lightline#concatenate(['foo', 'bar', 'baz'], 0), 'foo > bar > baz')
  call s:assert.equals(lightline#concatenate(['foo', 'bar', 'baz'], 1), 'foo < bar < baz')
endfunction

function! s:suite.one_empty()
  call s:assert.equals(lightline#concatenate([''], 0), '')
  call s:assert.equals(lightline#concatenate([''], 1), '')
endfunction

function! s:suite.two_empty_left()
  call s:assert.equals(lightline#concatenate(['', 'bar'], 0), 'bar')
  call s:assert.equals(lightline#concatenate(['', 'bar'], 1), 'bar')
endfunction

function! s:suite.two_empty_right()
  call s:assert.equals(lightline#concatenate(['foo', ''], 0), 'foo')
  call s:assert.equals(lightline#concatenate(['foo', ''], 1), 'foo')
endfunction

function! s:suite.two_empty_both()
  call s:assert.equals(lightline#concatenate(['', ''], 0), '')
  call s:assert.equals(lightline#concatenate(['', ''], 1), '')
endfunction

function! s:suite.three_empty_left()
  call s:assert.equals(lightline#concatenate(['', 'bar', 'baz'], 0), 'bar > baz')
  call s:assert.equals(lightline#concatenate(['', 'bar', 'baz'], 1), 'bar < baz')
endfunction

function! s:suite.three_empty_middle()
  call s:assert.equals(lightline#concatenate(['foo', '', 'baz'], 0), 'foo > baz')
  call s:assert.equals(lightline#concatenate(['foo', '', 'baz'], 1), 'foo < baz')
endfunction

function! s:suite.three_empty_right()
  call s:assert.equals(lightline#concatenate(['foo', 'bar', ''], 0), 'foo > bar')
  call s:assert.equals(lightline#concatenate(['foo', 'bar', ''], 1), 'foo < bar')
endfunction

function! s:suite.three_empty_middle_right()
  call s:assert.equals(lightline#concatenate(['foo', '', ''], 0), 'foo')
  call s:assert.equals(lightline#concatenate(['foo', '', ''], 1), 'foo')
endfunction

function! s:suite.three_empty_left_right()
  call s:assert.equals(lightline#concatenate(['', 'bar', ''], 0), 'bar')
  call s:assert.equals(lightline#concatenate(['', 'bar', ''], 1), 'bar')
endfunction

function! s:suite.three_empty_left_middle()
  call s:assert.equals(lightline#concatenate(['', '', 'baz'], 0), 'baz')
  call s:assert.equals(lightline#concatenate(['', '', 'baz'], 1), 'baz')
endfunction

function! s:suite.three_empty_all()
  call s:assert.equals(lightline#concatenate(['', '', ''], 0), '')
  call s:assert.equals(lightline#concatenate(['', '', ''], 1), '')
endfunction

function! s:suite.keep_original()
  let xs = ['', 'bar', '']
  call s:assert.equals(lightline#concatenate(xs, 0), 'bar')
  call s:assert.equals(xs, ['', 'bar', ''])
  call s:assert.equals(lightline#concatenate(xs, 1), 'bar')
  call s:assert.equals(xs, ['', 'bar', ''])
endfunction