/** * Ensures that the validator follows expected behavior * * @return void */ public function testBasic() { $valuesExpected = array(array(0, 2000, true, true, false), array(0, '2 MB', true, true, true), array(0, '2MB', true, true, true), array(0, '2 MB', true, true, true), array(2000, null, true, true, false), array(0, 500, false, false, false), array(500, null, false, false, false)); foreach ($valuesExpected as $element) { $validator = new Zend_Validate_File_FilesSize($element[0], $element[1]); $this->assertEquals($element[2], $validator->isValid(dirname(__FILE__) . '/_files/testsize.mo'), "Tested with " . var_export($element, 1)); $this->assertEquals($element[3], $validator->isValid(dirname(__FILE__) . '/_files/testsize2.mo'), "Tested with " . var_export($element, 1)); $this->assertEquals($element[4], $validator->isValid(dirname(__FILE__) . '/_files/testsize3.mo'), "Tested with " . var_export($element, 1)); } foreach ($valuesExpected as $element) { $validator = new Zend_Validate_File_FilesSize(array($element[0], $element[1])); $this->assertEquals($element[2], $validator->isValid(dirname(__FILE__) . '/_files/testsize.mo'), "Tested with " . var_export($element, 1)); $this->assertEquals($element[3], $validator->isValid(dirname(__FILE__) . '/_files/testsize2.mo'), "Tested with " . var_export($element, 1)); $this->assertEquals($element[4], $validator->isValid(dirname(__FILE__) . '/_files/testsize3.mo'), "Tested with " . var_export($element, 1)); } $validator = new Zend_Validate_File_FilesSize(array(0, 200)); $this->assertEquals(false, $validator->isValid(dirname(__FILE__) . '/_files/nofile.mo')); $this->assertTrue(array_key_exists('fileFilesSizeNotReadable', $validator->getMessages())); $validator = new Zend_Validate_File_FilesSize(array(0, 500000)); $this->assertEquals(true, $validator->isValid(array(dirname(__FILE__) . '/_files/testsize.mo', dirname(__FILE__) . '/_files/testsize.mo', dirname(__FILE__) . '/_files/testsize2.mo'))); $this->assertEquals(true, $validator->isValid(dirname(__FILE__) . '/_files/testsize.mo')); }
/** * Ensures that the validator returns size infos * * @return void */ public function testFailureMessage() { $validator = new Zend_Validate_File_FilesSize(array('min' => 9999, 'max' => 10000)); $this->assertFalse($validator->isValid(array(dirname(__FILE__) . '/_files/testsize.mo', dirname(__FILE__) . '/_files/testsize.mo', dirname(__FILE__) . '/_files/testsize2.mo'))); $this->assertContains('9.76kB', current($validator->getMessages())); $this->assertContains('1.55kB', current($validator->getMessages())); $validator = new Zend_Validate_File_FilesSize(array('min' => 9999, 'max' => 10000, 'bytestring' => false)); $this->assertFalse($validator->isValid(array(dirname(__FILE__) . '/_files/testsize.mo', dirname(__FILE__) . '/_files/testsize.mo', dirname(__FILE__) . '/_files/testsize2.mo'))); $this->assertContains('9999', current($validator->getMessages())); $this->assertContains('1588', current($validator->getMessages())); }