/** * test saveRecord() method * * @test */ public function saveRecord() { $options = ['mocks' => ['Api' => ['_defaultSaveCallback', 'collectParam', 'convertBoolean']]]; $data = ['User' => ['id' => 1]]; $this->generateComponent($options); $this->Api->expects($this->once())->method('_defaultSaveCallback')->with($data, ['validate' => 'first']); $this->Api->saveRecord($data); $this->generateComponent($options); $mock = $this->getMockBuilder('stdclass')->setMethods(['saveCallback'])->getMock(); $mock->expects($this->once())->method('saveCallback')->will($this->returnValue(['saved' => 'value'])); $this->Api->saveRecord($data, ['saveCallback' => [$mock, 'saveCallback']]); $this->generateComponent($options); $this->Api->expects($this->once())->method('collectParam')->with('validate_only')->will($this->returnValue('yes')); $this->Api->staticExpects($this->once())->method('convertBoolean')->with('yes')->will($this->returnValue(true)); $this->Api->expects($this->once())->method('_defaultSaveCallback')->with($data, ['validate' => 'only']); $this->Api->saveRecord($data); }