Beispiel #1
0
 public function testDropOpen()
 {
     $file = new File(parent::$tempDir . "something.txt");
     $file->open('w+');
     $this->assertNotNull($file->getHandle());
     $this->assertTrue($file->exists());
     $file->drop();
     $this->assertTrue($file->exists());
 }
Beispiel #2
0
 public function testReadLockUpgrade()
 {
     $file = new File(parent::$tempDir . "garbage.txt");
     touch($file->getPath());
     $lockable = new LockableFile($file);
     $this->assertTrue($lockable->acquireRead());
     $this->assertTrue($lockable->acquireRead());
     $this->assertTrue($lockable->acquireWrite());
     $this->assertTrue($lockable->acquireWrite());
     $this->assertTrue($lockable->acquireWrite());
     $this->assertEquals(2, $lockable->readerCount());
     $this->assertEquals(3, $lockable->writerCount());
     $this->assertTrue($lockable->releaseWrite());
     $this->assertTrue($lockable->releaseWrite());
     $this->assertTrue($lockable->releaseWrite());
     $this->assertTrue($lockable->releaseRead());
     $this->assertTrue($lockable->releaseRead());
     $this->assertEquals(0, $lockable->readerCount());
     $this->assertEquals(0, $lockable->writerCount());
 }