تخطَّ إلى المحتوى
PHP Ecosystem
Explore

Testing

هذا المحتوى غير متوفر بلغتك بعد.

This package provides a consistent set of Composer scripts for local validation.

Tool references:

The asset tests publish the real bootstrap and bootstrap-icons packages from the package node_modules directory. composer install runs php-forge/foxy with the native manager, which installs them from the root package.json using PHP and ext-zlib; Node.js is unnecessary for this step:

Terminal window
composer install

Keep the development foxy.lock when updating frontend dependencies. It is excluded from Composer distribution archives because consuming applications resolve their own frontend requirements and maintain their own lockfiles. Foxy also adds generated @composer-asset/* dependencies with local file: paths to the checkout’s root package.json. Keep those generated entries local: the distributed manifest must declare only registry packages, so it can be consumed without paths into this checkout’s vendor directory. Inspect git diff -- package.json after Composer operations and remove generated entries before committing or packaging the library.

Run Rector to apply automated code refactoring.

Terminal window
composer rector

Run Easy Coding Standard (ECS) and apply fixes.

Terminal window
composer ecs

Verify that runtime dependencies are correctly declared in composer.json.

Terminal window
composer check-dependencies

Run mutation testing (minimum MSI and covered MSI of 100%).

Terminal window
composer mutation

Run mutation testing with static analysis enabled.

Terminal window
composer mutation-static

Run static analysis at level max with the strict rules.

Terminal window
composer static

Run the full test suite.

Terminal window
composer tests

The test classes are grouped with #[Group] attributes: asset, enum, form, html, i18n, and widget.

Composer scripts support forwarding additional arguments using --.

Run PHPUnit with code coverage report generation.

Terminal window
composer tests -- --coverage-html code_coverage

Run a single test group.

Terminal window
composer tests -- --group form

Run PHPStan with a different memory limit.

Terminal window
composer static -- --memory-limit=512M