私はこの質問として正確な問題に直面しています。 モックオブジェクトのCakePHPの「with」メソッドが機能しない
しかし、提供された答えは私にとってもうまくいきません。
これが問題です。コントローラのテスト ケース コード:
public function testCreate() {
$batches = $this->generate('ShippingBatches', array(
'components' => array(
'Session',
'Auth' => array('user', '_getUser')
)
));
$batches->Auth->expects($this->once())->method('user')
->with('id')
->will($this->returnValue(1));
$batches->Session
->expects($this->once())
->method('setFlash');
$this->testAction('/shippingbatches/create', array('data' => '[3,6]', 'method' => 'post'));
}
コントローラーコード:
public function create(){
//Some code here
$d['ShippingBatch']['user_id'] = $this->Auth->user('id');
$this->ShippingBatch->save($d);
//some code here
}
エラー: SQLSTATE[23000]: 整合性制約違反: 1048 列 'user_id' を null にすることはできません テスト ケース: ShippingBatchesControllerTestCase(testCreate)