예제 #1
0
 /**
  * @covers Robo47_DirectoryHasher_Result_File::getHashes
  */
 public function testGetHashes()
 {
     $file = new Robo47_DirectoryHasher_Result_File('/some/file.php');
     $file->addHash('md5', 'foo');
     $file->addHash('sha1', 'blub');
     $this->assertSame(array('md5' => 'foo', 'sha1' => 'blub'), $file->getHashes());
 }
예제 #2
0
 /**
  * {@inheritdoc}
  */
 public function addHashsToFileResult(Robo47_DirectoryHasher_Result_File $file)
 {
     $hashs = $this->getHashsForFile($file->getFilename());
     foreach ($hashs as $name => $value) {
         $file->addHash($name, $value);
     }
     return $this;
 }
예제 #3
0
 /**
  * Builds a Result from a DOM-Object
  *
  * @param DOMDocument $document
  * @return Robo47_DirectoryHasher_Result
  */
 public function buildResultFromDOM(DOMDocument $document)
 {
     $result = new Robo47_DirectoryHasher_Result();
     $xpath = new DOMXPath($document);
     $entries = $xpath->query('//files/file');
     foreach ($entries as $entry) {
         $filenameAttr = $entry->attributes->getNamedItem('name');
         if ($filenameAttr !== null) {
             $fileResult = new Robo47_DirectoryHasher_Result_File($filenameAttr->value);
             foreach ($this->getHashesFromFileNode($entry) as $name => $value) {
                 $fileResult->addHash($name, $value);
             }
             $result->addFileResult($fileResult);
         }
     }
     return $result;
 }