/** * @test * @dataProvider validatorTestsDataProvider * @param array $options * @param integer $imageWidth * @param integer $imageHeight * @param boolean $isValid */ public function validatorTests(array $options, $imageWidth, $imageHeight, $isValid) { $validator = new ImageSizeValidator($options); $image = $this->createMock(ImageInterface::class); $image->expects($this->any())->method('getWidth')->will($this->returnValue($imageWidth)); $image->expects($this->any())->method('getHeight')->will($this->returnValue($imageHeight)); $validationResult = $validator->validate($image); if ($isValid) { $this->assertFalse($validationResult->hasErrors()); } else { $this->assertTrue($validationResult->hasErrors()); } }