You are here

function FileLoadTest::testMultiple in Drupal 7

This will test loading file data from the database.

File

modules/simpletest/tests/file.test, line 2113
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), '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'], 'file_test_file_load() was able to modify the file during load.');
  $this
    ->assertEqual($by_path_file->fid, $file->fid, '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), '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'], 'file_test_file_load() was able to modify the file during load.');
  $this
    ->assertEqual($by_fid_file->uri, $file->uri, 'Loading by fid got the correct filepath.', 'File');
}