モデルのモックを使ってテストしたいのだが
うーん。
yiiへの期待のひとつに、PHPUnitが使えてPHPUnitのモックを利用できることがあったのですが、厳しい感じです。
id:hiromi2424:20110306 にあるような、サービスレイヤを設けたいのです。がががががががががが、Yiiは、CakePHPのClassRegistryのようなものを介さず、直接newしたりモデルのstaticメソッドににアクセスしています。これを解決するmockクラスを簡単に生成する方法を見出せずにいます。
- モデルクラスへアクセスする前に、モデルのモッククラスをinculdeする
- PHPUnitのgetMocK、getMockClassを駆使する
とかで解決できないか悩んでいます。モッククラスを書きたくないし、何よりサービスレイヤのテストでフィクスチャに依存したくないんです。