Crud\Test\TestCase\Action\AddActionTest::testApiCreateErrors PHP Method

testApiCreateErrors() public method

Test POST & PUT verbs using API Listener with data validation errors
public testApiCreateErrors ( string $method ) : void
$method string
return void
    public function testApiCreateErrors($method)
    {
        $this->_eventManager->on('Dispatcher.invokeController', ['priority' => 1000], function ($event) {
            $this->_controller->Flash = $this->getMockBuilder('Cake\\Controller\\Component\\FlashComponent')->setMethods(['set'])->disableOriginalConstructor()->getMock();
            $this->_controller->Flash->expects($this->never())->method('set');
            $this->_subscribeToEvents($this->_controller);
            $this->_controller->Crud->addListener('api', 'Crud.Api');
            $this->_controller->Blogs->validator()->requirePresence('name')->requirePresence('body')->add('name', ['length' => ['rule' => ['minLength', 10], 'message' => 'Name need to be at least 10 characters long']]);
        });
        $this->{$method}('/blogs/add.json', ['name' => 'too short']);
        $this->assertResponseError();
        $this->assertResponseContains('2 validation errors occurred');
    }