/**
  * @covers ::calculate
  * @covers ::hasPreReleasesToCompare
  * @covers ::calculatePreReleaseDifference
  * @covers ::comparePreReleases
  * @covers ::comparePreReleaseParts
  * @dataProvider providePreReleases
  */
 public function testCanComparePreReleases($a, $b, $expectedResult)
 {
     // ----------------------------------------------------------------
     // setup your test
     // ----------------------------------------------------------------
     // perform the change
     $actualResult = CompareTwoPreReleases::calculate($a, $b);
     // ----------------------------------------------------------------
     // test the results
     $this->assertEquals($expectedResult, $actualResult);
 }
 /**
  * compare the pre-release section of two versions
  *
  * @param  array $aVer
  * @param  array $bVer
  * @return int
  */
 private static function comparePreRelease($aVer, $bVer)
 {
     $aPre = self::getVersionPart($aVer, 'preRelease', null);
     $bPre = self::getVersionPart($bVer, 'preRelease', null);
     return CompareTwoPreReleases::calculate($aPre, $bPre);
 }