Example #1
0
 public function testIsWritableAndReadable()
 {
     $fileName = tempnam(__DIR__, '_none_');
     $stream = new Stream($fileName, "r");
     $this->assertFalse($stream->isWritable());
     $this->assertTrue($stream->isReadable());
     try {
         $stream->write('...');
         $this->fail();
     } catch (RuntimeException $e) {
         $this->assertEquals('Stream is not writable.', $e->getMessage());
     }
     $stream = new Stream($fileName, "w");
     $this->assertTrue($stream->isWritable());
     $this->assertFalse($stream->isReadable());
     try {
         $stream->read(1);
         $this->fail();
     } catch (RuntimeException $e) {
         $this->assertEquals('Stream is not readable.', $e->getMessage());
     }
     $stream = new Stream($fileName, "r+");
     $this->assertTrue($stream->isWritable());
     $this->assertTrue($stream->isReadable());
     $stream = new Stream($fileName, "w+");
     $this->assertTrue($stream->isWritable());
     $this->assertTrue($stream->isReadable());
     @unlink($fileName);
 }