蛋糕 3:为测试生成默认模型
Cake 3: Generating default model for tests
我知道 CakePHP 3 能够在 Table类不存在时生成它。
但这不适用于 getMockForModel()
方法的测试。
如何在不创建自定义 Table-class 的情况下使用它?
Auto-Tables 基于 \Cake\ORM\Table
个实例,因此您可以模拟 class,只需确保传递必要的选项,至少 table
](要表示的数据库名称 table),很可能是 connection
(要使用的连接实例)。
见http://api.cakephp.org/3.0/class-Cake.ORM.Table.html#___construct
大致如下:
$connection = ConnectionManager::get('test');
$table = $this->getMock('Cake\ORM\Table', ['methods', 'to', 'mock'], [
['table' => 'whatevers', 'connection' => $connection]
]);
我知道 CakePHP 3 能够在 Table类不存在时生成它。
但这不适用于 getMockForModel()
方法的测试。
如何在不创建自定义 Table-class 的情况下使用它?
Auto-Tables 基于 \Cake\ORM\Table
个实例,因此您可以模拟 class,只需确保传递必要的选项,至少 table
](要表示的数据库名称 table),很可能是 connection
(要使用的连接实例)。
见http://api.cakephp.org/3.0/class-Cake.ORM.Table.html#___construct
大致如下:
$connection = ConnectionManager::get('test');
$table = $this->getMock('Cake\ORM\Table', ['methods', 'to', 'mock'], [
['table' => 'whatevers', 'connection' => $connection]
]);