Skip to content

Commit 0af4752

Browse files
authored
Merge pull request #498 from asgrim/1-3-update-example-pie-ext
1.3.x - update example pie extension for tests
2 parents a8bf21c + 3f0f476 commit 0af4752

File tree

8 files changed

+20
-32
lines changed

8 files changed

+20
-32
lines changed

composer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
],
2929
"require": {
3030
"php": "8.1.*||8.2.*||8.3.*||8.4.*||8.5.*",
31-
"composer/composer": "^2.9.2",
31+
"composer/composer": "^2.9.5",
3232
"composer/pcre": "^3.3.2",
3333
"composer/semver": "^3.4.4",
3434
"fidry/cpu-core-counter": "^1.3.0",

composer.lock

Lines changed: 8 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

features/download-extensions.feature

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ Feature: Extensions can be downloaded with PIE
1313
Examples:
1414
| constraint | version |
1515
| 2.0.5 | 2.0.5 |
16-
| ^2.0 | 2.0.5 |
16+
| ^2.0 | 2.0.8 |
1717

1818
# pie download <ext>:dev-main
1919
@non-windows

phpstan-baseline.neon

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -420,26 +420,14 @@ parameters:
420420
count: 1
421421
path: test/unit/ComposerIntegration/VendorCleanupTest.php
422422

423-
-
424-
message: '#^Parameter \#1 \$phpExt of method Composer\\Package\\Package\:\:setPhpExt\(\) expects array\{extension\-name\?\: string, priority\?\: int, support\-zts\?\: bool, support\-nts\?\: bool, build\-path\?\: string\|null, download\-url\-method\?\: string, os\-families\?\: non\-empty\-list\<non\-empty\-string\>, os\-families\-exclude\?\: non\-empty\-list\<non\-empty\-string\>, \.\.\.\}\|null, array\{download\-url\-method\: array\{''composer\-default''\}\} given\.$#'
425-
identifier: argument.type
426-
count: 1
427-
path: test/unit/DependencyResolver/PackageTest.php
428-
429-
-
430-
message: '#^Parameter \#1 \$phpExt of method Composer\\Package\\Package\:\:setPhpExt\(\) expects array\{extension\-name\?\: string, priority\?\: int, support\-zts\?\: bool, support\-nts\?\: bool, build\-path\?\: string\|null, download\-url\-method\?\: string, os\-families\?\: non\-empty\-list\<non\-empty\-string\>, os\-families\-exclude\?\: non\-empty\-list\<non\-empty\-string\>, \.\.\.\}\|null, array\{download\-url\-method\: array\{''pre\-packaged\-source'', ''composer\-default''\}\} given\.$#'
431-
identifier: argument.type
432-
count: 1
433-
path: test/unit/DependencyResolver/PackageTest.php
434-
435423
-
436424
message: '#^Parameter \#2 \$extractedSourcePath of static method Php\\Pie\\Downloading\\DownloadedPackage\:\:fromPackageAndExtractedPath\(\) expects string, string\|false given\.$#'
437425
identifier: argument.type
438426
count: 3
439427
path: test/unit/Downloading/DownloadedPackageTest.php
440428

441429
-
442-
message: '#^Parameter \#1 \$phpExt of method Composer\\Package\\Package\:\:setPhpExt\(\) expects array\{extension\-name\?\: string, priority\?\: int, support\-zts\?\: bool, support\-nts\?\: bool, build\-path\?\: string\|null, download\-url\-method\?\: string, os\-families\?\: non\-empty\-list\<non\-empty\-string\>, os\-families\-exclude\?\: non\-empty\-list\<non\-empty\-string\>, \.\.\.\}\|null, array\{extension\-name\: null\} given\.$#'
430+
message: '#^Parameter \#1 \$phpExt of method Composer\\Package\\Package\:\:setPhpExt\(\) expects array\{extension\-name\?\: string, priority\?\: int, support\-zts\?\: bool, support\-nts\?\: bool, build\-path\?\: string\|null, download\-url\-method\?\: list\<string\>\|string, os\-families\?\: non\-empty\-list\<non\-empty\-string\>, os\-families\-exclude\?\: non\-empty\-list\<non\-empty\-string\>, \.\.\.\}\|null, array\{extension\-name\: null\} given\.$#'
443431
identifier: argument.type
444432
count: 1
445433
path: test/unit/ExtensionNameTest.php

src/DependencyResolver/Package.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -94,11 +94,11 @@ public static function fromComposerCompletePackage(CompletePackageInterface $com
9494
/** @var string|list<string> $method */
9595
$method = $phpExtOptions['download-url-method'];
9696
if (is_array($method)) {
97-
if (count($method) !== 1) {
98-
throw new InvalidArgumentException('This extension requires a newer version of PIE. Multiple download-url-methods are not supported until PIE 1.4.0.');
97+
if (count($method) === 1) {
98+
$method = $method[0];
99+
} else {
100+
$method = DownloadUrlMethod::ComposerDefaultDownload->value;
99101
}
100-
101-
$method = $method[0];
102102
}
103103

104104
$package->downloadUrlMethod = DownloadUrlMethod::tryFrom($method);

test/integration/Command/DownloadCommandTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
#[CoversClass(DownloadCommand::class)]
2424
class DownloadCommandTest extends TestCase
2525
{
26-
private const TEST_PACKAGE_LATEST = '2.0.5';
26+
private const TEST_PACKAGE_LATEST = '2.0.8';
2727
private const TEST_PACKAGE = 'asgrim/example-pie-extension';
2828

2929
private CommandTester $commandTester;

test/integration/DependencyResolver/ResolveDependencyWithComposerTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
#[CoversClass(ResolveDependencyWithComposer::class)]
2727
final class ResolveDependencyWithComposerTest extends TestCase
2828
{
29-
private const TEST_PACKAGE_LATEST = '2.0.5';
29+
private const TEST_PACKAGE_LATEST = '2.0.8';
3030
private const DOWNLOAD_URL_ANY = 'https://api.github.com/repos/asgrim/example-pie-extension/zipball/%s';
3131
private const DOWNLOAD_URL_1_0_1_ALPHA_3 = 'https://api.github.com/repos/asgrim/example-pie-extension/zipball/115f8f8e01ee098a18ec2f47af4852be51ebece7';
3232
private const DOWNLOAD_URL_1_0_1 = 'https://api.github.com/repos/asgrim/example-pie-extension/zipball/769f906413d6d1e12152f6d34134cbcd347ca253';

test/unit/DependencyResolver/PackageTest.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -173,8 +173,8 @@ public function testDownloadUrlMethodWithMultiItemListIsNotYetSupported(): void
173173
$composerCompletePackage = new CompletePackage('vendor/foo', '1.2.3.0', '1.2.3');
174174
$composerCompletePackage->setPhpExt(['download-url-method' => ['pre-packaged-source', 'composer-default']]);
175175

176-
$this->expectException(InvalidArgumentException::class);
177-
$this->expectExceptionMessage('This extension requires a newer version of PIE. Multiple download-url-methods are not supported until PIE 1.4.0.');
178-
Package::fromComposerCompletePackage($composerCompletePackage);
176+
$package = Package::fromComposerCompletePackage($composerCompletePackage);
177+
178+
self::assertSame(DownloadUrlMethod::ComposerDefaultDownload, $package->downloadUrlMethod());
179179
}
180180
}

0 commit comments

Comments
 (0)