PCUnit 1.5.0 リリース

PCUnit 1.5.0をリリースしました。

変更点は以下の通りです。

  • アサーション失敗で常にテスト関数から抜けるように修正。
  • _FATAL/_RETURNの付いたマクロを廃止。
  • 追加メッセージ用アサートマクロPCU_ASSERT*_MESSAGE追加。
  • PCU_format/PCU_formatW追加。
  • PCU_last_assertion廃止。
  • PCU_FAILを以前のPCU_FAIL0と同じ仕様に変更し、PCU_FAIL以外のPCU_FAIL*を廃止。
  • PCU_MESSAGEを以前のPCU_MESSAGE0と同じ仕様に変更し、PCU_MESSAGE以外のPCU_MESSAGE*を廃止。
  • pcunit_template.rbでMakefile生成対応。
  • VC++でビルド後イベントでテスト実行させた場合、アサーション失敗の行にジャンプできるように修正。


アサーション失敗で即テスト関数から抜けたい場合CUnitの仕様を踏襲して_FATALの付いたマクロを作ったのだけど、毎回_FATALを付けるのがめんどくさくなったので、失敗時は常に抜ける仕様にした。(以前id:bleis-tiftさんに指摘されたとおりになった)

longjmpが使えない場合にreturnに切り替えるのは工夫すればできた。つまり_RETURNは最初からいらない子だった。

_FATAL/_RETURNをdeprecatedにせずいきなり廃止にしてしまったので、PCUnitをアップグレードして既存のテストコードのコンパイルが通らなくなったら_FATAL/_RETURNを削除してください。