Chris@14
|
1 <?php
|
Chris@14
|
2 /*
|
Chris@14
|
3 * This file is part of PharIo\Version.
|
Chris@14
|
4 *
|
Chris@14
|
5 * (c) Arne Blankerts <arne@blankerts.de>, Sebastian Heuer <sebastian@phpeople.de>, Sebastian Bergmann <sebastian@phpunit.de>
|
Chris@14
|
6 *
|
Chris@14
|
7 * For the full copyright and license information, please view the LICENSE
|
Chris@14
|
8 * file that was distributed with this source code.
|
Chris@14
|
9 */
|
Chris@14
|
10
|
Chris@14
|
11 namespace PharIo\Version;
|
Chris@14
|
12
|
Chris@14
|
13 use PHPUnit\Framework\TestCase;
|
Chris@14
|
14
|
Chris@14
|
15 /**
|
Chris@14
|
16 * @covers PharIo\Version\SpecificMajorVersionConstraint
|
Chris@14
|
17 */
|
Chris@14
|
18 class SpecificMajorVersionConstraintTest extends TestCase {
|
Chris@14
|
19 public function versionProvider() {
|
Chris@14
|
20 return [
|
Chris@14
|
21 // compliant versions
|
Chris@14
|
22 [1, new Version('1.0.2'), true],
|
Chris@14
|
23 [1, new Version('1.0.3'), true],
|
Chris@14
|
24 [1, new Version('1.1.1'), true],
|
Chris@14
|
25 // non-compliant versions
|
Chris@14
|
26 [2, new Version('0.9.9'), false],
|
Chris@14
|
27 [3, new Version('2.2.3'), false],
|
Chris@14
|
28 [3, new Version('2.9.9'), false],
|
Chris@14
|
29 ];
|
Chris@14
|
30 }
|
Chris@14
|
31
|
Chris@14
|
32 /**
|
Chris@14
|
33 * @dataProvider versionProvider
|
Chris@14
|
34 *
|
Chris@14
|
35 * @param int $major
|
Chris@14
|
36 * @param Version $version
|
Chris@14
|
37 * @param bool $expectedResult
|
Chris@14
|
38 */
|
Chris@14
|
39 public function testReturnsTrueForCompliantVersions($major, Version $version, $expectedResult) {
|
Chris@14
|
40 $constraint = new SpecificMajorVersionConstraint('foo', $major);
|
Chris@14
|
41
|
Chris@14
|
42 $this->assertSame($expectedResult, $constraint->complies($version));
|
Chris@14
|
43 }
|
Chris@14
|
44 }
|