Check that the callback function is called correctly.

File

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

Class

FileScanDirectoryTest
Tests the file_scan_directory() function.

Code

function testOptionCallback() {

  // When nothing is matched nothing should be passed to the callback.
  $all_files = file_scan_directory($this->path, '/^NONEXISTINGFILENAME/', array(
    'callback' => 'file_test_file_scan_callback',
  ));
  $this
    ->assertEqual(0, count($all_files), 'No files were found.');
  $results = file_test_file_scan_callback();
  file_test_file_scan_callback_reset();
  $this
    ->assertEqual(0, count($results), 'No files were passed to the callback.');

  // Grab a listing of all the JavaSscript files and check that they're
  // passed to the callback.
  $all_files = file_scan_directory($this->path, '/^javascript-/', array(
    'callback' => 'file_test_file_scan_callback',
  ));
  $this
    ->assertEqual(2, count($all_files), 'Found two, expected javascript files.');
  $results = file_test_file_scan_callback();
  file_test_file_scan_callback_reset();
  $this
    ->assertEqual(2, count($results), 'Files were passed to the callback.');
}