let s:suite = themis#suite('parser') let s:assert = themis#helper('assert') let g:kind = { \ 'name' : 'hoge', \ 'default_action' : 'open', \ 'action_table': {}, \ } let g:kind.action_table.open = { \ 'is_selectable' : 1, \ } function! g:kind.action_table.open.func(candidate) abort echo 'hoge' endfunction let g:source = { \ 'name' : 'hoge', \ 'is_volatile' : 1, \ 'variables' : {'foo' : 'foo'} \} function! g:source.gather_candidates(args, context) abort "{{{ " Add dummy candidate. let g:candidates = [ a:context.input ] call map(g:candidates, '{ \ "word" : v:val, \ "source" : "hoge", \ "kind" : "hoge", \}') return g:candidates endfunction"}}} function! s:suite.source() abort call s:assert.equals(unite#define_kind(g:kind), 0) call s:assert.equals(unite#define_source(g:source), 0) call s:assert.true(!empty(unite#get_all_sources(g:source.name))) call s:assert.equals(unite#undef_kind(g:kind.name), 0) call s:assert.equals(unite#undef_source(g:source.name), 0) call s:assert.true(empty(unite#get_all_sources(g:source.name))) call s:assert.equals(unite#define_source(g:source), 0) endfunction " vim:foldmethod=marker:fen: