プラグインのUnitTest†
- ページ: BugTrack2
- 投稿者: korokke
- 優先順位: 低
- 状態: 提案
- カテゴリー: その他
- 投稿日: 2006-02-19 (日) 09:11:52
- バージョン:
メッセージ†
プラグインのUnitTestはどう行えば可能でしょうか?
何かアイデアのある方よろしくおねがいします。
- okkez:日記/2005-07-24に以前サンプルを書きました。ただし、PHP4向けです。 -- okkez
- なんかあったはず、と思って検索したらありました。BugTrack2/113 -- okkez
- 暫くして話題が育たないようなら、BugTrack2/113 に集めましょう。今まで本体のUnitTestの話題はそこはかとなく出ていて(しかし本気の人があまりいなくて)、かつ本体のコードがテストしやすい形に作られているわけでもないアレな状態なわけですが、プラグイン作者の視点で実施するというのは面白いですね。 -- henoheno
- プラグイン呼び出しを行うライブラリや、最低限の設定だけ事前に定義しておけば、blockおよびinline型のpluginはAssertできると思います。プラグイン内部で使うユーティリティ関数もテスト可能でしょう。 -- henoheno
- それで、プラグインを呼び出す部分も、"&color(#aaa,#bbb){test};" のような文字列で定義できるようになると使いやすいでしょうね。ああこれは既存の関数でできるかな? -- henoheno
class PkwkPluginColorTest extends PHPUnit_TestCase
{
function PkwkPluginColorTest($name) { $this->PHPUnit_TestCase($name); }
function test_color()
{
// Usage
$usage = '&color(foreground[,background]){text};';
$this->assertEquals($usage, something('&color(){test};'));
// Foreground only
$this->assertEquals(
'<span style="color:#aaa">test</span>',
something('&color(#aaa){test};'));
// Background only
$this->assertEquals(
'<span style="background-color:#bbb">test</span>',
something('&color(,#bbb){test};'));
// Both
$this->assertEquals(
'<span style="color:#aaa; background-color:#bbb">test</span>',
something('&color(#aaa,#bbb){test};'));
}
}
- 長くなるので略。 -- henoheno
- プラグインついでに、プラグイン/開発者向け にある、class スタイルのプラグインは書けないのでしょうか?class スタイルになると UnitTest もまたちょっと違ってきてしまうので対応する気があるのなら、それも考慮して進めていったほうがいいかも。 --