/** * Ensures that the validator follows expected behavior * * @return void */ public function testBasic() { $valuesExpected = array(array(array('image/jpg', 'image/jpeg'), true), array('image', true), array('test/notype', false), array('image/gif, image/jpg, image/jpeg', true), array(array('image/vasa', 'image/jpg', 'image/jpeg'), true), array(array('image/jpg', 'image/jpeg', 'gif'), true), array(array('image/gif', 'gif'), false), array('image/jp', false), array('image/jpg2000', false), array('image/jpeg2000', false)); $filetest = dirname(__FILE__) . '/_files/picture.jpg'; $files = array('name' => 'picture.jpg', 'type' => 'image/jpg', 'size' => 200, 'tmp_name' => $filetest, 'error' => 0); foreach ($valuesExpected as $element) { $options = array_shift($element); $expected = array_shift($element); $validator = new File\MimeType($options); $validator->enableHeaderCheck(); $this->assertEquals($expected, $validator->isValid($filetest, $files), "Test expected " . var_export($expected, 1) . " with " . var_export($options, 1) . "\nMessages: " . var_export($validator->getMessages(), 1)); } }
/** * @group ZF-11258 */ public function testZF11258() { $validator = new File\MimeType(array('image/gif', 'image/jpg', 'headerCheck' => true)); $this->assertFalse($validator->isValid(__DIR__ . '/_files/nofile.mo')); $this->assertTrue(array_key_exists('fileMimeTypeNotReadable', $validator->getMessages())); $this->assertContains("'nofile.mo'", current($validator->getMessages())); }
/** * @group ZF-9686 */ public function testDualValidation() { $valuesExpected = array(array('image', true)); $filetest = __DIR__ . '/_files/picture.jpg'; $files = array('name' => 'picture.jpg', 'type' => 'image/jpg', 'size' => 200, 'tmp_name' => $filetest, 'error' => 0); foreach ($valuesExpected as $element) { $options = array_shift($element); $expected = array_shift($element); $validator = new File\MimeType($options); $validator->enableHeaderCheck(); $this->assertEquals($expected, $validator->isValid($filetest, $files), "Test expected " . var_export($expected, 1) . " with " . var_export($options, 1) . "\nMessages: " . var_export($validator->getMessages(), 1)); $validator = new File\MimeType($options); $validator->enableHeaderCheck(); $this->assertEquals($expected, $validator->isValid($filetest, $files), "Test expected " . var_export($expected, 1) . " with " . var_export($options, 1) . "\nMessages: " . var_export($validator->getMessages(), 1)); } }