From 696e8e6e20ba990e8df4c903fa9bc485e32b8884 Mon Sep 17 00:00:00 2001 From: TavoNiievez Date: Tue, 1 Feb 2022 00:53:34 -0500 Subject: [PATCH 01/15] Support for Codeception 5 --- .github/workflows/main.yml | 2 +- composer.json | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 77bdcac..bc656c6 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -8,7 +8,7 @@ jobs: strategy: matrix: - php: [7.4, 8.0] + php: [8.0, 8.1] laravel: [6, 8] steps: diff --git a/composer.json b/composer.json index eb1869f..14b9cce 100644 --- a/composer.json +++ b/composer.json @@ -17,18 +17,18 @@ "homepage": "https://medium.com/@ganieves" } ], - "minimum-stability": "RC", + "minimum-stability": "dev", "require": { - "php": "^7.4 | ^8.0", + "php": "^8.0", "ext-json": "*", - "codeception/lib-innerbrowser": "^2.0", - "codeception/codeception": "^4.1" + "codeception/lib-innerbrowser": "^2.0 | *@dev", + "codeception/codeception": "^5.0.0-alpha1" }, "require-dev": { - "codeception/module-asserts": "^2.0", - "codeception/module-rest": "^2.0", + "codeception/module-asserts": "^2.0 | *@dev", + "codeception/module-rest": "^2.0 | *@dev", "laravel/framework": "^6.0 | ^7.0 | ^8.0", - "vlucas/phpdotenv": "^3.6 | ^4.1 | ^5.2" + "vlucas/phpdotenv": "^3.6 | ^4.2 | ^5.3" }, "autoload": { "classmap": ["src/"] From 3ea6acbe14a71f60d15dfa2b47588d5e4e591228 Mon Sep 17 00:00:00 2001 From: Anatoliy Lapiy Date: Thu, 17 Feb 2022 15:49:56 +0200 Subject: [PATCH 02/15] Allow Laravel 9, improve Codeception 5 support (#39) --- composer.json | 4 ++-- src/Codeception/Module/Laravel.php | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/composer.json b/composer.json index 14b9cce..0d54479 100644 --- a/composer.json +++ b/composer.json @@ -22,12 +22,12 @@ "php": "^8.0", "ext-json": "*", "codeception/lib-innerbrowser": "^2.0 | *@dev", - "codeception/codeception": "^5.0.0-alpha1" + "codeception/codeception": "^5.0.0-alpha1 | dev-5.0-interfaces" }, "require-dev": { "codeception/module-asserts": "^2.0 | *@dev", "codeception/module-rest": "^2.0 | *@dev", - "laravel/framework": "^6.0 | ^7.0 | ^8.0", + "laravel/framework": "^6.0 | ^7.0 | ^8.0 | ^9.0", "vlucas/phpdotenv": "^3.6 | ^4.2 | ^5.3" }, "autoload": { diff --git a/src/Codeception/Module/Laravel.php b/src/Codeception/Module/Laravel.php index fcadb79..a406f29 100644 --- a/src/Codeception/Module/Laravel.php +++ b/src/Codeception/Module/Laravel.php @@ -152,7 +152,7 @@ class Laravel extends Framework implements ActiveRecord, PartedModule /** * @var array */ - public $config = []; + public array $config = []; public function __construct(ModuleContainer $moduleContainer, ?array $config = null) { From 34e261abc0a5118781877a5424e03966a4bfb498 Mon Sep 17 00:00:00 2001 From: Gintautas Miselis Date: Sat, 19 Feb 2022 21:35:45 +0200 Subject: [PATCH 03/15] Update versions of Codeception and lib-innerbrowser --- composer.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/composer.json b/composer.json index 0d54479..22f2e52 100644 --- a/composer.json +++ b/composer.json @@ -21,8 +21,8 @@ "require": { "php": "^8.0", "ext-json": "*", - "codeception/lib-innerbrowser": "^2.0 | *@dev", - "codeception/codeception": "^5.0.0-alpha1 | dev-5.0-interfaces" + "codeception/lib-innerbrowser": "^3.0", + "codeception/codeception": "^5.0.0-alpha2" }, "require-dev": { "codeception/module-asserts": "^2.0 | *@dev", From cf774407a43384251a67bc5f03fe881489f81fa1 Mon Sep 17 00:00:00 2001 From: Gintautas Miselis Date: Tue, 19 Apr 2022 14:46:11 +0300 Subject: [PATCH 04/15] Update dependencies --- composer.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/composer.json b/composer.json index 22f2e52..9248ac9 100644 --- a/composer.json +++ b/composer.json @@ -17,16 +17,16 @@ "homepage": "https://medium.com/@ganieves" } ], - "minimum-stability": "dev", + "minimum-stability": "RC", "require": { "php": "^8.0", "ext-json": "*", - "codeception/lib-innerbrowser": "^3.0", - "codeception/codeception": "^5.0.0-alpha2" + "codeception/lib-innerbrowser": "^3.1", + "codeception/codeception": "^5.0.0-RC2" }, "require-dev": { - "codeception/module-asserts": "^2.0 | *@dev", - "codeception/module-rest": "^2.0 | *@dev", + "codeception/module-asserts": "^3.0", + "codeception/module-rest": "^3.1", "laravel/framework": "^6.0 | ^7.0 | ^8.0 | ^9.0", "vlucas/phpdotenv": "^3.6 | ^4.2 | ^5.3" }, From 65ef92dfa167195b72eb34e40b425fa564b9f2c9 Mon Sep 17 00:00:00 2001 From: Gintautas Miselis Date: Wed, 20 Apr 2022 10:09:24 +0300 Subject: [PATCH 05/15] Support Laravel 8 only --- .github/workflows/main.yml | 14 ++------------ composer.json | 4 ++-- 2 files changed, 4 insertions(+), 14 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index bc656c6..e929c15 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -9,7 +9,7 @@ jobs: strategy: matrix: php: [8.0, 8.1] - laravel: [6, 8] + laravel: [8] steps: - name: Checkout code @@ -23,14 +23,6 @@ jobs: extensions: ctype, iconv, intl, json, mbstring, pdo, pdo_sqlite coverage: none - - name: Checkout Laravel 6 Sample - if: matrix.laravel == 6 - uses: actions/checkout@v2 - with: - repository: codeception/laravel-module-tests - path: framework-tests - ref: 6.x - - name: Checkout Laravel 8 Sample if: matrix.laravel == 8 uses: actions/checkout@v2 @@ -51,9 +43,7 @@ jobs: restore-keys: ${{ runner.os }}-${{ matrix.php }}-composer- - name: Install dependencies - run: | - composer require laravel/framework=${{ matrix.laravel }} --ignore-platform-req=php --no-update - composer install --prefer-dist --no-progress --ignore-platform-req=php + run: composer install --prefer-dist --no-progress - name: Validate composer.json and composer.lock run: composer validate diff --git a/composer.json b/composer.json index 9248ac9..6dbf566 100644 --- a/composer.json +++ b/composer.json @@ -27,8 +27,8 @@ "require-dev": { "codeception/module-asserts": "^3.0", "codeception/module-rest": "^3.1", - "laravel/framework": "^6.0 | ^7.0 | ^8.0 | ^9.0", - "vlucas/phpdotenv": "^3.6 | ^4.2 | ^5.3" + "laravel/framework": "^8.0", + "vlucas/phpdotenv": "^5.3" }, "autoload": { "classmap": ["src/"] From 541642bf850f28bf1233df4f85b75a19af762908 Mon Sep 17 00:00:00 2001 From: Gintautas Miselis Date: Sun, 7 Aug 2022 18:21:18 +0300 Subject: [PATCH 06/15] Assign default value to client property (#44) --- src/Codeception/Module/Laravel.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Codeception/Module/Laravel.php b/src/Codeception/Module/Laravel.php index a406f29..a29a7d4 100644 --- a/src/Codeception/Module/Laravel.php +++ b/src/Codeception/Module/Laravel.php @@ -147,7 +147,7 @@ class Laravel extends Framework implements ActiveRecord, PartedModule /** * @var LaravelConnector */ - public ?AbstractBrowser $client; + public ?AbstractBrowser $client = null; /** * @var array From bc29ae1a3d1912d0ab61ad31908e1367b5aeaf52 Mon Sep 17 00:00:00 2001 From: Maksim Barsukov Date: Fri, 4 Nov 2022 15:47:22 +0100 Subject: [PATCH 07/15] Edited the way of loading the environment --- composer.json | 6 +++--- src/Codeception/Lib/Connector/Laravel.php | 8 +++++++- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/composer.json b/composer.json index 6dbf566..9be04a4 100644 --- a/composer.json +++ b/composer.json @@ -22,13 +22,13 @@ "php": "^8.0", "ext-json": "*", "codeception/lib-innerbrowser": "^3.1", - "codeception/codeception": "^5.0.0-RC2" + "codeception/codeception": "^5.0.0-RC2", + "vlucas/phpdotenv": "^5.3" }, "require-dev": { "codeception/module-asserts": "^3.0", "codeception/module-rest": "^3.1", - "laravel/framework": "^8.0", - "vlucas/phpdotenv": "^5.3" + "laravel/framework": "^8.0" }, "autoload": { "classmap": ["src/"] diff --git a/src/Codeception/Lib/Connector/Laravel.php b/src/Codeception/Lib/Connector/Laravel.php index 049c718..ff6499c 100644 --- a/src/Codeception/Lib/Connector/Laravel.php +++ b/src/Codeception/Lib/Connector/Laravel.php @@ -9,6 +9,7 @@ use Codeception\Lib\Connector\Laravel6\ExceptionHandlerDecorator as Laravel6ExceptionHandlerDecorator; use Codeception\Module\Laravel as LaravelModule; use Codeception\Stub; +use Dotenv\Dotenv; use Exception; use Illuminate\Contracts\Config\Repository as Config; use Illuminate\Contracts\Debug\ExceptionHandler; @@ -186,7 +187,12 @@ private function loadApplication(): AppContract { /** @var AppContract $app */ $app = require $this->module->config['bootstrap_file']; - $app->loadEnvironmentFrom($this->module->config['environment_file']); + if ($this->module->config['environment_file'] !== '.env') { + Dotenv::createMutable( + $app->basePath(), + $this->module->config['environment_file'] + )->load(); + } $app->instance('request', new Request()); return $app; From 4dec762a84c9dd60a937622883711a368c622a58 Mon Sep 17 00:00:00 2001 From: Gintautas Miselis Date: Sat, 19 Nov 2022 22:20:52 +0200 Subject: [PATCH 08/15] Allow to set headers in module configuration --- src/Codeception/Module/Laravel.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/Codeception/Module/Laravel.php b/src/Codeception/Module/Laravel.php index a29a7d4..a1bf8d9 100644 --- a/src/Codeception/Module/Laravel.php +++ b/src/Codeception/Module/Laravel.php @@ -62,6 +62,7 @@ * * disable_events: `boolean`, default `false` - disable events (does not disable model events). * * disable_model_events: `boolean`, default `false` - disable model events. * * url: `string`, default `` - the application URL. + * * headers: `array` - default headers are set before each test. * * ### Example #1 (`functional.suite.yml`) * @@ -172,6 +173,7 @@ public function __construct(ModuleContainer $moduleContainer, ?array $config = n 'disable_middleware' => false, 'disable_events' => false, 'disable_model_events' => false, + 'headers' => [], ], (array)$config ); @@ -210,6 +212,8 @@ public function _initialize() */ public function _before(TestInterface $test) { + $this->headers = $this->config['headers']; + $this->client = new LaravelConnector($this); // Database migrations should run before database cleanup transaction starts From 9874619ea4e9f1d750c478d9b332abe8693ab20e Mon Sep 17 00:00:00 2001 From: Gintautas Miselis Date: Sat, 19 Nov 2022 22:24:26 +0200 Subject: [PATCH 09/15] Remove Laravel6\ExceptionHandlerDecorator Because Laravel 6 is no longer supported --- src/Codeception/Lib/Connector/Laravel.php | 10 +- .../Laravel6/ExceptionHandlerDecorator.php | 94 ------------------- 2 files changed, 1 insertion(+), 103 deletions(-) delete mode 100644 src/Codeception/Lib/Connector/Laravel6/ExceptionHandlerDecorator.php diff --git a/src/Codeception/Lib/Connector/Laravel.php b/src/Codeception/Lib/Connector/Laravel.php index ff6499c..ab07df3 100644 --- a/src/Codeception/Lib/Connector/Laravel.php +++ b/src/Codeception/Lib/Connector/Laravel.php @@ -6,7 +6,6 @@ use Closure; use Codeception\Lib\Connector\Laravel\ExceptionHandlerDecorator as LaravelExceptionHandlerDecorator; -use Codeception\Lib\Connector\Laravel6\ExceptionHandlerDecorator as Laravel6ExceptionHandlerDecorator; use Codeception\Module\Laravel as LaravelModule; use Codeception\Stub; use Dotenv\Dotenv; @@ -154,14 +153,7 @@ private function initialize(SymfonyRequest $request = null): void $this->getEvents()->listen('*', $listener); - // Replace the Laravel exception handler with our decorated exception handler, - // so exceptions can be intercepted for the disable_exception_handling functionality. - if (version_compare(Application::VERSION, '7.0.0', '<')) { - $decorator = new Laravel6ExceptionHandlerDecorator($this->getExceptionHandler()); - } else { - $decorator = new LaravelExceptionHandlerDecorator($this->getExceptionHandler()); - } - + $decorator = new LaravelExceptionHandlerDecorator($this->getExceptionHandler()); $decorator->exceptionHandlingDisabled($this->exceptionHandlingDisabled); $this->app->instance(ExceptionHandler::class, $decorator); diff --git a/src/Codeception/Lib/Connector/Laravel6/ExceptionHandlerDecorator.php b/src/Codeception/Lib/Connector/Laravel6/ExceptionHandlerDecorator.php deleted file mode 100644 index 2bca70c..0000000 --- a/src/Codeception/Lib/Connector/Laravel6/ExceptionHandlerDecorator.php +++ /dev/null @@ -1,94 +0,0 @@ -laravelExceptionHandler = $exceptionHandler; - } - - public function exceptionHandlingDisabled(bool $exceptionHandlingDisabled): void - { - $this->exceptionHandlingDisabled = $exceptionHandlingDisabled; - } - - /** - * Report or log an exception. - * - * @throws Exception - */ - public function report(Exception $e): void - { - $this->laravelExceptionHandler->report($e); - } - - /** - * Determine if the exception should be reported. - */ - public function shouldReport(Exception $e): bool - { - return $this->exceptionHandlingDisabled; - } - - /** - * Render an exception into an HTTP response. - * - * @param Request $request - * @throws Exception - */ - public function render($request, Exception $e): Response - { - $response = $this->laravelExceptionHandler->render($request, $e); - - if ($this->exceptionHandlingDisabled && $this->isSymfonyExceptionHandlerOutput($response->getContent())) { - // If content was generated by the \Symfony\Component\Debug\ExceptionHandler class - // the Laravel application could not handle the exception, - // so re-throw this exception if the Codeception user disabled Laravel exception handling. - throw $e; - } - - return $response; - } - - /** - * Check if the response content is HTML output of the Symfony exception handler class. - */ - private function isSymfonyExceptionHandlerOutput(string $content): bool - { - return strpos($content, '
') !== false || - strpos($content, '
') !== false; - } - - /** - * Render an exception to the console. - * - * @param OutputInterface $output - */ - public function renderForConsole($output, Exception $e): void - { - $this->laravelExceptionHandler->renderForConsole($output, $e); - } - - /** - * @param string|callable $method - */ - public function __call($method, array $args) - { - return call_user_func_array([$this->laravelExceptionHandler, $method], $args); - } -} From 54a839e4acfc372f39db0d0d2af1b88a6d9b4cf4 Mon Sep 17 00:00:00 2001 From: Gustavo Nieves <64917965+TavoNiievez@users.noreply.github.com> Date: Thu, 29 Dec 2022 00:50:11 -0500 Subject: [PATCH 10/15] Update readme with supported versions. --- readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readme.md b/readme.md index b844e36..0b46c48 100644 --- a/readme.md +++ b/readme.md @@ -9,7 +9,7 @@ A Codeception module for Laravel framework. ## Requirements -* `Laravel 6` or higher. +* `Laravel 8` or higher, as per the [Laravel supported versions](https://laravel.com/docs/master/releases#support-policy). * `PHP 7.4` or higher. ## Installation From c321fcbb4beaba4f3623a5dc524c18e6fd5c1776 Mon Sep 17 00:00:00 2001 From: Gintautas Miselis Date: Thu, 9 Feb 2023 08:31:18 +0200 Subject: [PATCH 11/15] Support lib-innerbrowser v4 --- composer.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/composer.json b/composer.json index 9be04a4..05879fa 100644 --- a/composer.json +++ b/composer.json @@ -21,13 +21,13 @@ "require": { "php": "^8.0", "ext-json": "*", - "codeception/lib-innerbrowser": "^3.1", - "codeception/codeception": "^5.0.0-RC2", + "codeception/lib-innerbrowser": "^3.1 | ^4.0", + "codeception/codeception": "^5.0.8", "vlucas/phpdotenv": "^5.3" }, "require-dev": { "codeception/module-asserts": "^3.0", - "codeception/module-rest": "^3.1", + "codeception/module-rest": "^3.3", "laravel/framework": "^8.0" }, "autoload": { From 4cc91aad2b8933d3531926e501776d19f8a5fa9e Mon Sep 17 00:00:00 2001 From: Gintautas Miselis Date: Thu, 9 Feb 2023 08:38:29 +0200 Subject: [PATCH 12/15] Run tests on PHP 8.2, upgrade actions --- .github/workflows/main.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index e929c15..5418df2 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -8,12 +8,12 @@ jobs: strategy: matrix: - php: [8.0, 8.1] + php: [8.0, 8.1, 8.2] laravel: [8] steps: - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 - name: Setup PHP uses: shivammathur/setup-php@v2 @@ -25,7 +25,7 @@ jobs: - name: Checkout Laravel 8 Sample if: matrix.laravel == 8 - uses: actions/checkout@v2 + uses: actions/checkout@v3 with: repository: codeception/laravel-module-tests path: framework-tests @@ -36,7 +36,7 @@ jobs: run: echo "::set-output name=dir::$(composer config cache-files-dir)" - name: Cache composer dependencies - uses: actions/cache@v2.1.3 + uses: actions/cache@v3 with: path: ${{ steps.composer-cache.outputs.dir }} key: ${{ runner.os }}-${{ matrix.php }}-composer-${{ hashFiles('composer.json') }} @@ -64,4 +64,4 @@ jobs: working-directory: framework-tests - name: Run test suite - run: php vendor/bin/codecept run Functional -c framework-tests \ No newline at end of file + run: php vendor/bin/codecept run Functional -c framework-tests From b2e273d16a8a3f5bfb00e58a02a74203cb155f18 Mon Sep 17 00:00:00 2001 From: Adrian Date: Mon, 13 Jan 2025 09:33:31 +0100 Subject: [PATCH 13/15] fix: use the request object resolved from the app container as parameter to kernel's terminate method call (#52) --- src/Codeception/Lib/Connector/Laravel.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Codeception/Lib/Connector/Laravel.php b/src/Codeception/Lib/Connector/Laravel.php index ab07df3..2bdad83 100644 --- a/src/Codeception/Lib/Connector/Laravel.php +++ b/src/Codeception/Lib/Connector/Laravel.php @@ -111,7 +111,7 @@ protected function doRequest($request): Response $request = Request::createFromBase($request); $response = $this->kernel->handle($request); - $this->getHttpKernel()->terminate($request, $response); + $this->getHttpKernel()->terminate($this->app['request'], $response); return $response; } From ba308fc6cae9559cc28f6347a93acf6f8a3cacb4 Mon Sep 17 00:00:00 2001 From: Aliaksei Sanikovich Date: Mon, 13 Jan 2025 11:43:32 +0300 Subject: [PATCH 14/15] Call forgetBootstrappers after test (#53) --- src/Codeception/Module/Laravel.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/Codeception/Module/Laravel.php b/src/Codeception/Module/Laravel.php index a1bf8d9..129c5b7 100644 --- a/src/Codeception/Module/Laravel.php +++ b/src/Codeception/Module/Laravel.php @@ -24,6 +24,7 @@ use Codeception\Subscriber\ErrorHandler; use Codeception\TestInterface; use Codeception\Util\ReflectionHelper; +use Illuminate\Console\Application as Artisan; use Illuminate\Contracts\Config\Repository as Config; use Illuminate\Contracts\Foundation\Application as ApplicationContract; use Illuminate\Database\Connection; @@ -261,6 +262,8 @@ public function _after(TestInterface $test) unset($this->app[\Faker\Generator::class]); unset($this->app[\Illuminate\Database\Eloquent\Factory::class]); } + + Artisan::forgetBootstrappers(); } /** From dfc426ab2214d7ac99a03972e70a250c4d0e63dc Mon Sep 17 00:00:00 2001 From: Aaron Gustavo Nieves <64917965+TavoNiievez@users.noreply.github.com> Date: Tue, 14 Jan 2025 15:30:01 -0500 Subject: [PATCH 15/15] Update CI (#54) --- .github/workflows/main.yml | 35 +++++++++++++++++++++++------------ composer.json | 4 ++-- readme.md | 4 ++-- 3 files changed, 27 insertions(+), 16 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 5418df2..fd75a49 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -8,12 +8,12 @@ jobs: strategy: matrix: - php: [8.0, 8.1, 8.2] - laravel: [8] + php: [8.2, 8.3, 8.4] + laravel: [10, 11] steps: - name: Checkout code - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Setup PHP uses: shivammathur/setup-php@v2 @@ -23,17 +23,21 @@ jobs: extensions: ctype, iconv, intl, json, mbstring, pdo, pdo_sqlite coverage: none - - name: Checkout Laravel 8 Sample - if: matrix.laravel == 8 - uses: actions/checkout@v3 + - name: Set Laravel version reference + run: echo "LV_REF=${MATRIX_LARAVEL%.*}" >> $GITHUB_ENV + env: + MATRIX_LARAVEL: ${{ matrix.laravel }} + + - name: Checkout Laravel ${{ env.LV_REF }} Sample + uses: actions/checkout@v4 with: repository: codeception/laravel-module-tests path: framework-tests - ref: main + ref: ${{ env.LV_REF }}.x - name: Get composer cache directory id: composer-cache - run: echo "::set-output name=dir::$(composer config cache-files-dir)" + run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT - name: Cache composer dependencies uses: actions/cache@v3 @@ -42,20 +46,27 @@ jobs: key: ${{ runner.os }}-${{ matrix.php }}-composer-${{ hashFiles('composer.json') }} restore-keys: ${{ runner.os }}-${{ matrix.php }}-composer- + - name: Install PHPUnit 11 + run: composer require --dev --no-update "phpunit/phpunit=^11.0" + - name: Install dependencies - run: composer install --prefer-dist --no-progress + run: | + composer require symfony/console:^6.0 || ^7.0 --no-update + composer require codeception/module-asserts="3.*" --no-update + composer update --prefer-dist --no-progress --no-dev - name: Validate composer.json and composer.lock - run: composer validate + run: composer validate --strict working-directory: framework-tests - name: Install Laravel Sample run: | composer remove codeception/module-laravel --dev --no-update - composer install --no-progress + composer require phpunit/phpunit:^11.0 --dev --no-update + composer update --no-progress working-directory: framework-tests - - name: Prepare the test environment and run test suite + - name: Prepare the test environment run: | cp .env.testing .env php artisan config:cache diff --git a/composer.json b/composer.json index 05879fa..ead9d2c 100644 --- a/composer.json +++ b/composer.json @@ -19,7 +19,7 @@ ], "minimum-stability": "RC", "require": { - "php": "^8.0", + "php": "^8.2", "ext-json": "*", "codeception/lib-innerbrowser": "^3.1 | ^4.0", "codeception/codeception": "^5.0.8", @@ -28,7 +28,7 @@ "require-dev": { "codeception/module-asserts": "^3.0", "codeception/module-rest": "^3.3", - "laravel/framework": "^8.0" + "laravel/framework": "^10.0 | ^11.0" }, "autoload": { "classmap": ["src/"] diff --git a/readme.md b/readme.md index 0b46c48..87f0ec6 100644 --- a/readme.md +++ b/readme.md @@ -9,8 +9,8 @@ A Codeception module for Laravel framework. ## Requirements -* `Laravel 8` or higher, as per the [Laravel supported versions](https://laravel.com/docs/master/releases#support-policy). -* `PHP 7.4` or higher. +* `Laravel 10` or higher, as per the [Laravel supported versions](https://laravel.com/docs/master/releases#support-policy). +* `PHP 8.2` or higher. ## Installation pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy