Chris@2: , Sebastian Heuer , Sebastian Bergmann Chris@2: * Chris@2: * For the full copyright and license information, please view the LICENSE Chris@2: * file that was distributed with this source code. Chris@2: */ Chris@2: Chris@2: namespace PharIo\Version; Chris@2: Chris@2: use PHPUnit\Framework\TestCase; Chris@2: Chris@2: /** Chris@2: * @covers PharIo\Version\ExactVersionConstraint Chris@2: */ Chris@2: class ExactVersionConstraintTest extends TestCase { Chris@2: public function compliantVersionProvider() { Chris@2: return [ Chris@2: ['1.0.2', new Version('1.0.2')], Chris@2: ['4.8.9', new Version('4.8.9')], Chris@2: ['4.8', new Version('4.8')], Chris@2: ]; Chris@2: } Chris@2: Chris@2: public function nonCompliantVersionProvider() { Chris@2: return [ Chris@2: ['1.0.2', new Version('1.0.3')], Chris@2: ['4.8.9', new Version('4.7.9')], Chris@2: ['4.8', new Version('4.8.5')], Chris@2: ]; Chris@2: } Chris@2: Chris@2: /** Chris@2: * @dataProvider compliantVersionProvider Chris@2: * Chris@2: * @param string $constraintValue Chris@2: * @param Version $version Chris@2: */ Chris@2: public function testReturnsTrueForCompliantVersion($constraintValue, Version $version) { Chris@2: $constraint = new ExactVersionConstraint($constraintValue); Chris@2: Chris@2: $this->assertTrue($constraint->complies($version)); Chris@2: } Chris@2: Chris@2: /** Chris@2: * @dataProvider nonCompliantVersionProvider Chris@2: * Chris@2: * @param string $constraintValue Chris@2: * @param Version $version Chris@2: */ Chris@2: public function testReturnsFalseForNonCompliantVersion($constraintValue, Version $version) { Chris@2: $constraint = new ExactVersionConstraint($constraintValue); Chris@2: Chris@2: $this->assertFalse($constraint->complies($version)); Chris@2: } Chris@2: }