/** * Test validateData method * * @dataProvider validateDataProvider * * @param bool $isValid * @param bool|array $expected * @param null|array $messages */ public function testValidateDataPassed($isValid, $expected, $messages = null) { $validator = $this->getMockBuilder('Magento\\Eav\\Model\\Validator\\Attribute\\Data')->disableOriginalConstructor()->setMethods(array('isValid', 'getMessages'))->getMock(); $validator->expects($this->once())->method('isValid')->will($this->returnValue($isValid)); if ($messages) { $validator->expects($this->once())->method('getMessages')->will($this->returnValue($messages)); } else { $validator->expects($this->never())->method('getMessages'); } $this->_model->expects($this->once())->method('_getValidator')->will($this->returnValue($validator)); $data = array('test' => true); $this->assertEquals($expected, $this->_model->validateData($data)); }