private function readPackageReleaseDependencies($baseUrl, $packageName, $version)
 {
     $dependencyReader = new PackageDependencyParser();
     $depthPath = '/r/' . strtolower($packageName) . '/deps.' . $version . '.txt';
     $content = $this->requestContent($baseUrl, $depthPath);
     $dependencyArray = unserialize($content);
     $result = $dependencyReader->buildDependencyInfo($dependencyArray);
     return $result;
 }
 /**
  * @dataProvider dataProvider10
  * @param $expected
  * @param $data10
  * @param $data20
  */
 public function testShouldParseDependencies($expected, $data10, $data20)
 {
     $expectedDependencies = array();
     foreach ($expected as $expectedItem) {
         $expectedDependencies[] = new DependencyConstraint($expectedItem['type'], $expectedItem['constraint'], $expectedItem['channel'], $expectedItem['name']);
     }
     $parser = new PackageDependencyParser();
     if (false !== $data10) {
         $result = $parser->buildDependencyInfo($data10);
         $this->assertEquals($expectedDependencies, $result->getRequires() + $result->getOptionals(), "Failed for package.xml 1.0 format");
     }
     if (false !== $data20) {
         $result = $parser->buildDependencyInfo($data20);
         $this->assertEquals($expectedDependencies, $result->getRequires() + $result->getOptionals(), "Failed for package.xml 2.0 format");
     }
 }