function FileTranferTest::testJail

File

drupal/modules/simpletest/tests/filetransfer.test, line 66

Class

FileTranferTest

Code

function testJail() {
  $source = $this
    ->_buildFakeModule();

  // This convoluted piece of code is here because our testing framework does
  // not support expecting exceptions.
  $gotit = FALSE;
  try {
    $this->testConnection
      ->copyDirectory($source, '/tmp');
  } catch (FileTransferException $e) {
    $gotit = TRUE;
  }
  $this
    ->assertTrue($gotit, 'Was not able to copy a directory outside of the jailed area.');
  $gotit = TRUE;
  try {
    $this->testConnection
      ->copyDirectory($source, DRUPAL_ROOT . '/' . variable_get('file_public_path', conf_path() . '/files'));
  } catch (FileTransferException $e) {
    $gotit = FALSE;
  }
  $this
    ->assertTrue($gotit, 'Was able to copy a directory inside of the jailed area');
}