function FileValidatorTest::testFileValidateSize in SimpleTest 7
Test file_validate_size().
File
- tests/
file.test, line 457 - This provides SimpleTests for the core file handling functionality. These include FileValidateTest and FileSaveTest.
Class
- FileValidatorTest
- This will run tests against the file validation functions (file_validate_*).
Code
function testFileValidateSize() {
global $user;
$original_user = $user;
drupal_save_session(FALSE);
// Run these test as uid = 1.
$user = user_load(1);
$file = new stdClass();
$file->filesize = 999999;
$errors = file_validate_size($file, 1, 1);
$this
->assertEqual(count($errors), 0, t('No size limits enforced on uid=1.'), 'File');
// Run these tests as a regular user.
$user = $this
->drupalCreateUser();
// Create a file with a size of 1000 bytes, and quotas of only 1 byte.
$file = new stdClass();
$file->filesize = 1000;
$errors = file_validate_size($file, 0, 0);
$this
->assertEqual(count($errors), 0, t('No limits means no errors.'), 'File');
$errors = file_validate_size($file, 1, 0);
$this
->assertEqual(count($errors), 1, t('Error for the file being over the limit.'), 'File');
$errors = file_validate_size($file, 0, 1);
$this
->assertEqual(count($errors), 1, t('Error for the user being over their limit.'), 'File');
$errors = file_validate_size($file, 1, 1);
$this
->assertEqual(count($errors), 2, t('Errors for both the file and their limit.'), 'File');
$user = $original_user;
drupal_save_session(TRUE);
}