Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[6.x] GitHub Actions will run test suite in Windows (#33054)
* Github Actions run test suite in Windows * Only once run on PHP 7.4 with the latest stable Composer packages installed. The Linux strategy matrix will discover issues in PHP 7.2 & 7.3. * Don't install PHP extension 'pcntl' that isn't available on Windows. * Some extensions must be explicitly setup on Windows. e.g., pdo_mysql, fileinfo, ftp * php.ini 'memory_limit' must be increased 128M to 512M when running all PHPUnit tests synchronously. * Some GitHub Actions workflow configs don't work in Windows because containers only work on Linux: * MySQL server * Redis server. There are no native Windows binaries for Redis so a clone like Memurai would have to be manually setup. * Memcached The above absent services will cause some tests to be skipped. * Skip CI-only tests when running Windows Server 2019 since mysqld.exe isn't available. * Further increase testRetry*()'s margin of error for assertEqualsWithDelta(). The call is meant to be delayed 100ms but Github Actions' virtual env returns up to 110.3ms. * Bump league/flysystem 1.0.8 to 1.0.34 FilesystemAdapterTest::testPath() fails when run on Windows using 1.0.8. A Windows-only change added in 1.0.34 meets the behavior Laravel expects for file paths. * Fix brittle FilesystemTest on Windows w/ PHP 7.2 The test cases re-using subdirectory __DIR__.'/tmp/foo' causes issues when running PHP 7.2 on Windows. The kernel's directory deletetion operating is async so the next PHPUnit test case is starting before directory deletion has completed for the previous test. 1. create __DIR__.'/tmp' only once for FilesystemTest by using PHPUnit @beforeClass and @afterclass annotations. 2. make each test use a unique subdirectory name so there is no overlap / leakage between tests when mkdir() is called.
- Loading branch information