に呼び出しPHPユニット致命的なエラー:未定義のメソッドのPHPUnit_Framework_MockObject_InvocationMocker
Fatal error: Call to undefined method PHPUnit_Framework_MockObject_InvocationMocker::getTableColumns() in /joomla-cms/libraries/joomla/table/table.php on line 241
テストコード失敗は、これは、「失敗/エラー」テストコードない致命的なエラーを有する試験用https://github.com/photodude/joomla-cms/blob/patch-1/tests/unit/suites/libraries/cms/installer/JInstallerAdapterTest.php#L111 に配置され
$mockTableExtension = $this->getMock('JTableExtension', array('find', 'load'), array($this->getMockDatabase()));
私は格納された値を使用する場合
$mockDatabase = $this->getMockDatabase();
とタイプキャストmockDatabase
オブジェクトを配列上記の致命的なエラーが表示されます。
$mockTableExtension = $this->getMock('JTableExtension', array('find', 'load'), (array) $mockDatabase);
配列にキャスト
mockDatabase
オブジェクトおよびオブジェクトタイプと
トラヴィス・テストは
すべてが通過して、PHPでうまく動作しますhttps://travis-ci.org/photodude/joomla-cms/jobs/172201634#L1427-L2178が、問題は私が何か間違ったことをやっているhhvm でのテストに固有のものですvar_dumpedモックセットアップ?何か他のことが起こっていますか?
注:私は最近、このテストスーツの部分をPHP 5.6でテストし、同じ問題が発生しました。だから私は、これらのテストのセットアップで間違っていないものは何か分からない。