/**
  * Tests writing with one class and reading with another.
  *
  * @group Drupal
  * @group PhpStorage
  */
 public function testReadOnly()
 {
     $php = new FileStorage($this->standardSettings);
     $name = $this->randomName() . '/' . $this->randomName() . '.php';
     // Find a global that doesn't exist.
     do {
         $random = mt_rand(10000, 100000);
     } while (isset($GLOBALS[$random]));
     // Write out a PHP file and ensure it's successfully loaded.
     $code = "<?php\n\$GLOBALS[{$random}] = TRUE;";
     $success = $php->save($name, $code);
     $this->assertSame($success, TRUE);
     $php_read = new FileReadOnlyStorage($this->readonlyStorage);
     $php_read->load($name);
     $this->assertTrue($GLOBALS[$random]);
     // If the file was successfully loaded, it must also exist, but ensure the
     // exists() method returns that correctly.
     $this->assertSame($php_read->exists($name), TRUE);
     // Saving and deleting should always fail.
     $this->assertFalse($php_read->save($name, $code));
     $this->assertFalse($php_read->delete($name));
 }