/** * @expectedException ErrorException */ public function testBagIt_uncompressBagError() { BagIt_uncompressBag(__DIR__ . '/TestBag'); }
/** * Open an existing bag. This expects $bag to be set. * * @return void */ private function _openBag() { if ($this->_isCompressed()) { $this->bagDirectory = BagIt_uncompressBag($this->bag); } else { $this->bagDirectory = realpath($this->bag); } $this->bagitFile = "{$this->bagDirectory}/bagit.txt"; list($version, $fileEncoding, $errors) = BagIt_readBagItFile($this->bagitFile); $this->bagVersion = $version; $this->tagFileEncoding = $fileEncoding; $this->bagErrors = array_merge($this->bagErrors, $errors); $files = scandir($this->bagDirectory); if (count($files) > 0) { $bagdir = $this->bagDirectory; $manifestFile = findFirstExisting(array("{$bagdir}/manifest-sha1.txt", "{$bagdir}/manifest-md5.txt"), "{$bagdir}/manifest-sha1.txt"); try { $this->manifest = new BagItManifest($manifestFile, $this->bagDirectory . '/', $this->tagFileEncoding); } catch (Exception $exc) { array_push($this->bagErrors, array('manifest', "Error reading {$manifestFile}.")); } if ($this->isExtended()) { $manifestFile = findFirstExisting(array("{$bagdir}/tagmanifest-sha1.txt", "{$bagdir}/tagmanifest-md5.txt"), "{$bagdir}/tagmanifest-sha1.txt"); $this->tagManifest = new BagItManifest($manifestFile, $this->bagDirectory . '/', $this->tagFileEncoding); try { $this->fetch = new BagItFetch("{$this->bagDirectory}/fetch.txt", $this->tagFileEncoding); } catch (Exception $exc) { array_push($this->bagErrors, array('fetch', 'Error reading fetch file.')); } $this->bagInfoFile = "{$this->bagDirectory}/bag-info.txt"; $this->_readBagInfo(); } } }