Describe gina#command#commit Before all let Path = vital#gina#import('System.Filepath') let slit1 = Slit(tempname(), 1) call slit1.write('A/foo.txt', []) call slit1.write('B/foo.txt', []) call slit1.execute('add .') call slit1.execute('commit -m "First"') call slit1.write('C/foo.txt', []) call slit1.execute('add .') End After all %bwipeout! End Describe Use cases Before %bwipeout! execute 'edit' fnameescape(slit1.worktree) End It might be called without arguments GinaSync commit Assert Equals(winnr('$'), 1) Assert Equals(bufname('%'), printf('gina://%s:commit', slit1.refname)) Assert Equals(getline(1, 3), [ \ '', \ '# Please enter the commit message for your changes. Lines starting', \ '# with ''#'' will be ignored, and an empty message aborts the commit.', \]) " Commit commitmsg call setline(1, ['Test Message']) | wq Assert Equals(slit1.execute('log --pretty=format:%s'), [ \ 'Test Message', \ 'First', \]) " Reset call slit1.execute('reset --soft HEAD@{1}') End It might be called with --verbose GinaSync commit --verbose Assert Equals(winnr('$'), 1) Assert Equals(bufname('%'), printf('gina://%s:commit', slit1.refname)) Assert Equals(getline(1, 3), [ \ '', \ '# Please enter the commit message for your changes. Lines starting', \ '# with ''#'' will be ignored, and an empty message aborts the commit.', \]) Assert True(index(getline(1, '$'), '# ------------------------ >8 ------------------------') >= 0) " Commit commitmsg call setline(1, ['Test Message']) | wq Assert Equals(slit1.execute('log --pretty=format:%s'), [ \ 'Test Message', \ 'First', \]) " Reset call slit1.execute('reset --soft HEAD@{1}') End It might be called with --amend GinaSync commit --amend Assert Equals(winnr('$'), 1) Assert Equals(bufname('%'), printf('gina://%s:commit', slit1.refname)) Assert Equals(getline(1, 4), [ \ 'First', \ '', \ '# Please enter the commit message for your changes. Lines starting', \ '# with ''#'' will be ignored, and an empty message aborts the commit.', \]) " Commit commitmsg call setline(1, ['Test Message']) | wq Assert Equals(slit1.execute('log --pretty=format:%s'), [ \ 'Test Message', \]) " Reset call slit1.execute('reset --soft HEAD@{1}') End It might be called with --message={message} GinaSync commit --message="Test Message" Assert Equals(winnr('$'), 1) Assert NotEquals(bufname('%'), printf('gina://%s:commit', slit1.refname)) Assert Equals(slit1.execute('log --pretty=format:%s'), [ \ 'Test Message', \ 'First', \]) " Reset call slit1.execute('reset --soft HEAD@{1}') End End End