aboutsummaryrefslogtreecommitdiff
path: root/vim/bundle/lightline.vim/test/uniq.vim
diff options
context:
space:
mode:
Diffstat (limited to 'vim/bundle/lightline.vim/test/uniq.vim')
-rw-r--r--vim/bundle/lightline.vim/test/uniq.vim46
1 files changed, 46 insertions, 0 deletions
diff --git a/vim/bundle/lightline.vim/test/uniq.vim b/vim/bundle/lightline.vim/test/uniq.vim
new file mode 100644
index 0000000..cdfaec0
--- /dev/null
+++ b/vim/bundle/lightline.vim/test/uniq.vim
@@ -0,0 +1,46 @@
+let s:suite = themis#suite('uniq')
+let s:assert = themis#helper('assert')
+
+function! s:uniq(...)
+ try
+ return call(SID('uniq'), a:000)
+ catch
+ return call(function('uniq'), a:000)
+ endtry
+endfunction
+
+function! s:suite.nil()
+ call s:assert.equals(s:uniq([]), [])
+endfunction
+
+function! s:suite.one()
+ call s:assert.equals(s:uniq(['foo']), ['foo'])
+endfunction
+
+function! s:suite.two()
+ call s:assert.equals(s:uniq(['foo', 'bar']), ['foo', 'bar'])
+endfunction
+
+function! s:suite.three()
+ call s:assert.equals(s:uniq(['foo', 'bar', 'baz']), ['foo', 'bar', 'baz'])
+endfunction
+
+function! s:suite.two_duplicated()
+ call s:assert.equals(s:uniq(['foo', 'foo']), ['foo'])
+endfunction
+
+function! s:suite.three_duplicated()
+ call s:assert.equals(s:uniq(['foo', 'bar', 'foo']), ['foo', 'bar', 'foo'])
+endfunction
+
+function! s:suite.many1()
+ call s:assert.equals(s:uniq(['foo', 'foo', 'bar', 'baz', 'baz', 'qux', 'foo']), ['foo', 'bar', 'baz', 'qux', 'foo'])
+endfunction
+
+function! s:suite.many2()
+ call s:assert.equals(s:uniq(['foo', 'foo', 'foo', 'foo', 'bar', 'bar', 'bar']), ['foo', 'bar'])
+endfunction
+
+function! s:suite.many3()
+ call s:assert.equals(s:uniq(['foo', 'foo', 'bar', 'bar', 'bar', 'foo', 'foo', 'foo']), ['foo', 'bar', 'foo'])
+endfunction