2009-04-16 8 views
2

に設定されているかをテストします、モデルがビューに追加されます。ユニットテストのZendコントローラは - どのように私はZendのではビュー

//In a controller 
public function indexAction() { 
    //Do some work and get a model 
    $this->view->model = $model;  
} 

我々は簡単に(「モデル」は、ビューに存在することを確認することができますI同様に動作しません "値" をテストする、しかし

//In a unit test 
    public function testModelIsSetInView() { 
    //Call the controllers index action 
    $this->assertTrue(isset($this->controller->view->model)); 
    } 

:このためSimpleTestの)を使用して「メートル

//In a unit test 
    public function testModelValue() { 
    //Call the controllers index action 

    //Both of these return null, though I'd like to access them! 
    $this->assertNull($this->controller->view->model); 
    $this->assertNull($this->controller->view->__get('model')); 
    } 

私が手にするにはどうすればよい(または、LEAをstテスト)は、コントローラが有効なモデルを設定していますか?

答えて

0

ので、溶液(この時点で少なくとも計画1)はZend_View_Interfaceを実装してテスト可能なビューを作成しています。これには、 "__set"に渡されたオブジェクトを返す "get"メソッドが含まれます。次に、テストブートストラッププロセス中にこのビューを使用するようにコントローラを接続します。

これは最適なアプローチではない可能性があるので、私はまだ潜在的な解決策を持っている他の人の意見を聞きたいです。

関連する問題