mirror of
https://github.com/SpaceVim/SpaceVim.git
synced 2025-02-03 16:40:05 +08:00
89 lines
2.9 KiB
Plaintext
89 lines
2.9 KiB
Plaintext
|
Describe gina#command#status
|
|||
|
Before all
|
|||
|
let Path = vital#gina#import('System.Filepath')
|
|||
|
let slit1 = Slit(tempname(), 1)
|
|||
|
call slit1.write('A/foo.txt', [])
|
|||
|
call slit1.execute('add %s', slit1.path('A/foo.txt'))
|
|||
|
|
|||
|
call slit1.write('A/foo.txt', ['1'])
|
|||
|
call slit1.execute('commit --quiet -am "First"')
|
|||
|
|
|||
|
call slit1.write('A/foo.txt', ['2'])
|
|||
|
call slit1.execute('commit --quiet -am "Second"')
|
|||
|
|
|||
|
call slit1.write('A/foo.txt', ['3'])
|
|||
|
call slit1.execute('add %s', slit1.path('A/foo.txt'))
|
|||
|
|
|||
|
call slit1.write('A/foo.txt', ['4'])
|
|||
|
End
|
|||
|
|
|||
|
After all
|
|||
|
%bwipeout!
|
|||
|
End
|
|||
|
|
|||
|
Before
|
|||
|
%bwipeout!
|
|||
|
End
|
|||
|
|
|||
|
Describe Use cases
|
|||
|
It might be called without arguments
|
|||
|
execute 'edit' fnameescape(slit1.path('A/foo.txt'))
|
|||
|
GinaSync status
|
|||
|
Assert Equals(winnr('$'), 1)
|
|||
|
Assert Equals(bufname('%'), printf('gina://%s:status', slit1.refname))
|
|||
|
Assert Match(join(getline(1, '$'), "\n"), '[32mmodified: A/foo.txt[m')
|
|||
|
Assert Match(join(getline(1, '$'), "\n"), '[31mmodified: A/foo.txt[m')
|
|||
|
End
|
|||
|
|
|||
|
It might be called with -- A/*.txt
|
|||
|
execute 'edit' fnameescape(slit1.path('A/foo.txt'))
|
|||
|
GinaSync status -- A/*.txt
|
|||
|
Assert Equals(winnr('$'), 1)
|
|||
|
Assert Equals(bufname('%'), printf('gina://%s:status:--', slit1.refname))
|
|||
|
Assert Match(join(getline(1, '$'), "\n"), '[32mmodified: A/foo.txt[m')
|
|||
|
Assert Match(join(getline(1, '$'), "\n"), '[31mmodified: A/foo.txt[m')
|
|||
|
End
|
|||
|
|
|||
|
It might be called with -- A/*.vim
|
|||
|
execute 'edit' fnameescape(slit1.path('A/foo.txt'))
|
|||
|
GinaSync status -- A/*.vim
|
|||
|
Assert Equals(winnr('$'), 1)
|
|||
|
Assert Equals(bufname('%'), printf('gina://%s:status:--', slit1.refname))
|
|||
|
Assert Equals(getline(1, '$'), [
|
|||
|
\ 'On branch master',
|
|||
|
\ 'nothing to commit, working tree clean',
|
|||
|
\])
|
|||
|
End
|
|||
|
End
|
|||
|
|
|||
|
Describe Use cases (--short)
|
|||
|
It might be called without arguments
|
|||
|
execute 'edit' fnameescape(slit1.path('A/foo.txt'))
|
|||
|
GinaSync status --short
|
|||
|
Assert Equals(winnr('$'), 1)
|
|||
|
Assert Equals(bufname('%'), printf('gina://%s:status', slit1.refname))
|
|||
|
Assert Equals(getline(1, '$'), [
|
|||
|
\ '[32mM[m[31mM[m A/foo.txt'
|
|||
|
\])
|
|||
|
End
|
|||
|
|
|||
|
It might be called with -- A/*.txt
|
|||
|
execute 'edit' fnameescape(slit1.path('A/foo.txt'))
|
|||
|
GinaSync status --short -- A/*.txt
|
|||
|
Assert Equals(winnr('$'), 1)
|
|||
|
Assert Equals(bufname('%'), printf('gina://%s:status:--', slit1.refname))
|
|||
|
Assert Equals(getline(1, '$'), [
|
|||
|
\ '[32mM[m[31mM[m A/foo.txt'
|
|||
|
\])
|
|||
|
End
|
|||
|
|
|||
|
It might be called with -- A/*.vim
|
|||
|
execute 'edit' fnameescape(slit1.path('A/foo.txt'))
|
|||
|
GinaSync status --short -- A/*.vim
|
|||
|
Assert Equals(winnr('$'), 1)
|
|||
|
Assert Equals(bufname('%'), printf('gina://%s:status:--', slit1.refname))
|
|||
|
Assert Equals(getline(1, '$'), [''])
|
|||
|
End
|
|||
|
End
|
|||
|
End
|