You are here

function FileLoadTest::testMultiple in SimpleTest 7

This will test loading file data from the database.

File

tests/file.test, line 1617
This provides SimpleTests for the core file handling functionality. These include FileValidateTest and FileSaveTest.

Class

FileLoadTest
Tests the file_load() function.

Code

function testMultiple() {

  // Create a new file object.
  $file = $this
    ->createFile('druplicon.txt', NULL, 'public');

  // Load by path.
  file_test_reset();
  $by_path_files = file_load_multiple(array(), array(
    'uri' => $file->uri,
  ));
  $this
    ->assertFileHookCalled('load');
  $this
    ->assertEqual(1, count($by_path_files), t('file_load_multiple() returned an array of the correct size.'));
  $by_path_file = reset($by_path_files);
  $this
    ->assertTrue($by_path_file->file_test['loaded'], t('file_test_file_load() was able to modify the file during load.'));
  $this
    ->assertEqual($by_path_file->fid, $file->fid, t("Loading by filepath got the correct fid."), 'File');

  // Load by fid.
  file_test_reset();
  $by_fid_files = file_load_multiple(array(
    $file->fid,
  ), array());
  $this
    ->assertFileHookCalled('load');
  $this
    ->assertEqual(1, count($by_fid_files), t('file_load_multiple() returned an array of the correct size.'));
  $by_fid_file = reset($by_fid_files);
  $this
    ->assertTrue($by_fid_file->file_test['loaded'], t('file_test_file_load() was able to modify the file during load.'));
  $this
    ->assertEqual($by_fid_file->uri, $file->uri, t("Loading by fid got the correct filepath."), 'File');
}