This project is a dungeon crawler game using PHP and the Symfony console.
It also is an exercise for my workshops on test-driven development (PHP).
You'll need one of these:
- local PHP 8.1+ and Composer 2
- Docker and DDEV
With local PHP:
bin/dungeon-of-bugs <path-to-level-file>
With DDEV:
ddev exec dungeon-of-bugs
Description | Command |
---|---|
Composer script with local PHP | composer ci:tests:all |
direct PHPUnit call with local PHP | vendor/bin/phpunit --testsuite all |
Composer script with DDEV | ddev composer ci:tests:all |
direct PHPUnit call with DDEV | ddev exec phpunit --testsuite all |
Description | Command |
---|---|
Composer script with local PHP | composer ci:tests:unit |
direct PHPUnit call with local PHP | vendor/bin/phpunit --testsuite unit |
Composer script with DDEV | ddev composer ci:tests:unit |
direct PHPUnit call with DDEV | ddev exec phpunit --testsuite unit |
Description | Command |
---|---|
Composer script with local PHP | composer ci:tests:functional |
direct PHPUnit call with local PHP | vendor/bin/phpunit --testsuite functional |
Composer script with DDEV | ddev composer ci:tests:functional |
direct PHPUnit call with DDEV | ddev exec phpunit --testsuite functional |
This example is for running the testcase
Description | Command |
---|---|
direct PHPUnit call with local PHP | vendor/bin/phpunit tests/Unit/PlaceholderTest.php |
direct PHPUnit call with DDEV | ddev exec phpunit tests/Unit/PlaceholderTest.php |
First, you need to configure the PHP interpreter in PHPStorm:
After this, configure PHPUnit:
- enter the PhpStorm settings
- PHP > Test Frameworks
- add a new PHPUnit configuration
- in "PHPUnit library",
select "Use Composer autoloader" and set
vendor/autoload.php
as path - in "Test Runner",
select "Default configuration file" and set
phpunit.xml
as path to script
Now you can right-click on a testcase or a directory and select "Run".
Part of the code has been copied from the Snake Console game by @dbu.