VimTestプラグインを更新した(0.0.1 -> 0.0.2)
https://github.com/kannokanno/vimtest
更新しました。
ChangeLogから抜粋。
- 実行コマンド(:VimTest/:VimTestBuffer/:VimTestStdout)の追加
- 出力結果のフォーマットを変更
- notEquals -> not_equalsにリネーム
- 日本語helpの追加
- vimtest/sampleを更新
- vimtest/testを追加
- READMEの内容を更新
- 多くのリファクタを実施
- 多くのバグを修正
実行コマンド(:VimTest/:VimTestBuffer/:VimTestStdout)の追加
0.0.1では「call vimtest#run()」というのをテストファイルの末尾に書く必要がありました。
let testcase = vimtest#new('さんぷる') function! testcase.hogehoge_test() call self.assert.equals(3, 1 + 2) endfunction call vimtest#run()
これがダサいandメンドイのダブルパンチだったので、実行用のコマンドを定義しました。
上記例でいうとcall ~が不要になります。
let testcase = vimtest#new('さんぷる') function! testcase.hogehoge_test() call self.assert.equals(3, 1 + 2) endfunction
で、:VimTestというコマンドを実行すると専用のバッファに出力されます。
出力結果のフォーマットを変更
以下のような失敗するテストがあるとします。
let testcase = vimtest#new('failed test1') function! testcase.failed() call self.assert.equals(2, 1) endfunction
0.0.1での出力はこうでした。
EFE
# failed test1
1) failed
Failed asserting expected:<2> but was:<1>FAILURES!
Test cases run: 3, Passes: 0, Failures: 3
0.0.2ではこうなります。
F
# failed test1
1) 'failed' is FAILED
Failed asserting that two values are equal
- expected:2
+ actual:1
Test cases run: 1, Passes: 0, Failures: 1
notEquals -> not_equalsにリネーム
いまのところ特に誰もVimTest使ってないだろうということで、
メソッド名を勢いよく変更しました。
日本語helpの追加
ヘルプを作りました。:help vimtestでご覧になれます。
英語ヘルプはありません。日本語のみです。
vimtest/sampleを更新
0.0.1の時もsampleはあったんですが、ちょっと分割したりしました。
内容的には特に変わってないし、ヘルプにあるのと重複したりしてます。
vimtest/testを追加
今回多くの時間をかけたところの一つ。VimTest自体のテストをVimTestを使って書きました。
量はそんなに多くないんですが、テストを書くのに合わせてリファクタするのに時間がかかった。
何にせよこれにより自分自身で使ってみることができてよかった。
実際に使ってみて「こういうのが欲しいな」という案はいくつかあって、
それは今後実装していきたいなと。
vimtest/sampleと合わせて、使い方の例になるかと思います。
今後のTODO
内部的には大分整理されてきていて満足なのですが、
機能的には色々と足りない点が見えてきました。
今のところ、こういうのを追加したいと考えています。
TODOじゃないんだけど気になっていること
- アサートの書き方が「call self.assert.xx」で長い...
- テストメソッド名にどうしても日本語を使いたくなる