Пример #1
0
 /**
  * Get a version lesser or equal than the milestone.
  *
  * @since 0.2.4
  *
  * @param string $milestone A version milestone that is used to define the requirement.
  *
  * @return string Version number that meets the requirement.
  */
 protected function getLesserEqualVersion($milestone)
 {
     if (version_compare($this->version->getVersion(), $milestone, '<=')) {
         return $this->version->getVersion();
     }
     $data = array_reverse($this->releases->getAll());
     foreach ($data as $version => $date) {
         if (version_compare($version, $milestone, '<=')) {
             return $version;
         }
     }
     throw new RuntimeException('Could not satisfy version requirements.');
 }
 /**
  * Test fetching the single components for a version.
  *
  * @dataProvider componentsDataProvider
  *
  * @since        0.1.0
  *
  * @param string $version    Version to test.
  * @param bool   $partial    Whether to accept partial versions.
  * @param int    $major      Expected major version component.
  * @param int    $minor      Expected minor version component.
  * @param int    $patch      Expected path version component.
  * @param string $prerelease Expected pre-release component.
  * @param string $build      Expected build metadata component.
  */
 public function testPartialComponents($version, $partial, $major, $minor, $patch, $prerelease, $build)
 {
     $semver = new SemanticVersion($version, $partial);
     $this->assertEquals($major, $semver->getMajor());
     $this->assertEquals($minor, $semver->getMinor());
     $this->assertEquals($patch, $semver->getPatch());
     $this->assertEquals($prerelease, $semver->getPreRelease());
     $this->assertEquals($build, $semver->getBuild());
 }