1
0
Fork 0
Commit Graph

30 Commits (dd49db6f0864197b00c92e662f0d1ca8364e076a)

Author SHA1 Message Date
Jordi Boggiano d3c176ec69
PHPStan Level 5 (#10070)
* Bump PHPStan to level 5

* Update seld/phar-utils to latest

* Add phpstan-setup / phpstan scripts
2021-08-21 17:41:52 +02:00
Juliette f5a0dfeb50
PHP 8.1: fix deprecation warnings about incorrect default values (#10036)
* PHP 8.1/Tests: fix some deprecation warnings

The default value for the `preg_split()` `$limit` parameter is `-1`, not `null`.

Fixes numerous `preg_split(): Passing null to parameter #3 ($limit) of type int is deprecated` notices when running the test suite.

Ref: https://www.php.net/manual/en/function.preg-split.php

* PHP 8.1/NoProxyPattern: fix deprecation warning

The default value for the `preg_split()` `$limit` parameter is `-1`, not `null`.

Fixes some `preg_split(): Passing null to parameter #3 ($limit) of type int is deprecated` notices when running the test suite.

```
Deprecation triggered by Composer\Test\Util\Http\ProxyManagerTest::testGetProxyForRequest:
preg_split(): Passing null to parameter #3 ($limit) of type int is deprecated

Stack trace:
0 [internal function]: Symfony\Bridge\PhpUnit\DeprecationErrorHandler->handleError(8192, '...', '...', 42)
1 src/Composer/Util/NoProxyPattern.php(42): preg_split('...', '...', NULL, 1)
2 src/Composer/Util/Http/ProxyManager.php(148): Composer\Util\NoProxyPattern->__construct('...')
3 src/Composer/Util/Http/ProxyManager.php(50): Composer\Util\Http\ProxyManager->initProxyData()
4 src/Composer/Util/Http/ProxyManager.php(59): Composer\Util\Http\ProxyManager->__construct()
5 tests/Composer/Test/Util/Http/ProxyManagerTest.php(75): Composer\Util\Http\ProxyManager::getInstance()
...
```

Ref: https://www.php.net/manual/en/function.preg-split.php

* PHP 8.1: fix deprecation warnings / http_build_query()

This fixes all relevant calls to the PHP native `http_build_query()` function.
The second parameter of which is the _optional_ `$numeric_prefix` parameter which expects a `string`.

A parameter being optional, however, does not automatically make it nullable.

As of PHP 8.1, passing `null` to a non-nullable PHP native function will generate a deprecation notice.
In this case, these function calls yielded a `http_build_query(): Passing null to parameter #2 ($numeric_prefix) of type string is deprecated` notice.

Changing the `null` to an empty string fixes this without BC-break.

Fixes a few deprecation warnings found when running the tests.

Refs:
* https://www.php.net/manual/en/function.http-build-query.php
* https://wiki.php.net/rfc/deprecate_null_to_scalar_internal_arg

* PHP 8.1: fix deprecation notices / PharData::__construct()

This fixes all relevant calls to the PHP native `PharData::__construct()` method.

The second parameter of this method is the _optional_ `$flags` parameter which expects an `int` of flags to be passed to the `Phar` parent class `RecursiveDirectoryIterator`.
Fixed by passing the default value for the `$flags` parameter as per the `RecursiveDirectoryIterator::__construct()` method.

The third parameter of the method is the _optional_ `$alias` parameter which expects an `string`.
Fixed by passing an empty string.

Fixes various notices along the lines of:
```
Deprecation triggered by Composer\Test\Package\Archiver\ArchiveManagerTest::testArchiveTar:
PharData::__construct(): Passing null to parameter #2 ($flags) of type int is deprecated

Stack trace:
0 [internal function]: Symfony\Bridge\PhpUnit\DeprecationErrorHandler->handleError(8192, '...', '...', 55)
1 src/Composer/Package/Archiver/PharArchiver.php(55): PharData->__construct('...', NULL, NULL, 2)
2 src/Composer/Package/Archiver/ArchiveManager.php(193): Composer\Package\Archiver\PharArchiver->archive('...', '...', '...', Array, false)
3 tests/Composer/Test/Package/Archiver/ArchiveManagerTest.php(65): Composer\Package\Archiver\ArchiveManager->archive(Object(Composer\Package\CompletePackage), '...', '...')
...
```

Refs:
* https://www.php.net/manual/en/phardata.construct.php
* https://www.php.net/manual/en/recursivedirectoryiterator.construct.php

Co-authored-by: jrfnl <jrfnl@users.noreply.github.com>
2021-08-11 13:05:45 +02:00
Jordi Boggiano d0b399b788
Merge branch '2.0' 2021-03-09 09:54:39 +01:00
Jordi Boggiano 0879e80d56
Fix functional tests to use the same PHP version as PHPUnit runs with 2021-03-09 09:54:06 +01:00
Jordi Boggiano 40800df6bd
Fix CS 2021-02-25 13:46:52 +01:00
Jordi Boggiano a54d16f8a6
Fix tests env usage 2021-02-17 23:26:40 +01:00
Jordi Boggiano 7267533690
Add one more InstalledVersions test for upgrades showing a known issue with plugin upgrades 2021-02-15 17:57:57 +01:00
Jordi Boggiano d3ba447b79
Full functional test-bed improvements 2021-02-12 11:09:00 +01:00
Jordi Boggiano b7d770659b
CS fixes 2020-11-22 14:52:39 +01:00
Jordi Boggiano 433968de17
Fix usage of create-project with local filesystem repos 2020-07-17 11:30:03 +02:00
Gabriel Caruso b4fc3b7eef
Make usage of foreach to improve readability
Instead of count and comparing, we can simple use a foreach.
2019-07-24 02:39:40 +02:00
Gabriel Caruso 2a13bb2649 Fixes from PHPStan (#7687)
* fix docblocks

* remove redundant conditional

* fix wrong variable name

* fix wrong namespaces

* add missing private members

* remove unused/redundant arguments

* move testcase class

* exclude TestCase.php

* Tweak RuleWatchGraph type hints

* Tweak doc comment
2018-11-12 15:23:32 +01:00
Gabriel Caruso a4b220273e Refactoring Tests (#6849) 2017-11-30 15:58:10 +01:00
Jordi Boggiano 122e422682 CS fixes 2017-03-08 15:16:44 +01:00
Jad Bitar 8625efd551 Fix support for testing exit code
The `$sectionData` was being overwritten, causing its assertion 
(`$this->assertSame()`) to fail.
2016-08-15 00:30:20 -04:00
Rob Bast adf3b956d0 try to use unique test directories
any tests that use the filesystem should have their own unique directory, as we run our test suite in parallel and
cleanup of tests (removing directories) should not interfere with currently running tests
2016-01-26 09:41:21 +01:00
Jordi Boggiano 414cf70008 Fix phar build test 2015-05-01 14:48:47 +01:00
Jordi Boggiano b80038804f Fix env override regression, fixes #3820 2015-03-06 16:21:40 +00:00
Rob Bast 85955d82a6 Raise timeout to 5 minutes 2015-02-23 09:57:54 +01:00
Jordi Boggiano fc3c7838b2 CS fixes 2014-12-07 13:54:29 +00:00
Christophe Coevoet ea44412476 Skip the phar building on HHVM
Building a phar does not work on HHVM. It looks like it tries to read the phar file which does not exist yet.
2014-12-02 14:31:37 +01:00
Jordi Boggiano ac497feaba CS fixes 2014-06-10 16:13:12 +02:00
Jordi Boggiano 1dd8bffce5 CS fixes 2013-05-27 10:41:50 +02:00
Nils Adermann 4af69c85ca Fix tests by passing proper working directory to processes 2013-03-28 13:33:40 +01:00
Jordi Boggiano cfc8bf0730 Make phar build fails more debuggable 2013-03-10 13:58:49 +01:00
Jordi Boggiano 5f3814bd05 Add test building phar and run functional tests with the phar, refs #1155 2012-11-11 17:09:57 +01:00
Jordi Boggiano 62d0ea7656 Circumvent cache in functional tests 2012-11-11 15:52:37 +01:00
Jordi Boggiano 487e66d0a9 Allow loading of multiple composer autoloaders concurrently, fixes #1248 2012-11-10 21:54:23 +01:00
Jordi Boggiano 6d38709fe8 Fix create project test 2012-11-10 19:42:29 +01:00
Jordi Boggiano 5b419c76ca Fix tests 2012-09-08 00:43:51 +02:00