spyryto / test-harness
Easy-to-read and quick-to-write tests without configuration
Installs: 3
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/spyryto/test-harness
Requires
- php: >=5.3.0
README
This low-code, one-file test harness lets you:
- Write readable tests
- Run them quickly
- Easily create your matchers
Examples
<?php describe ("expectEquals"); it ("works with simple values", function () { expect (1 + 1, is (2)); });
This will give you:
testing ...\test1.test.php
Passed tests : 1/1
How to configure an automatic task
Add the task
Add the following task to your tasks.json in your .vscode folder:
"tasks": ... [ { "label": "tests", "type": "shell", "command": "php test-harness/src/tests.php", "group": { "kind": "test", "isDefault": true } }, ] ...
If you have any Composer package, add the autoloader path:
"tasks": ... [ { "label": "tests", "type": "shell", "command": "php test-harness/src/tests.php prepend=src/vendor/autoload.php", "group": { "kind": "test", "isDefault": true } }, ] ...
Run the tests
Press F1, type test, select this action:
Tasks: Run test task.
You can configure a shotcut for that.
How to run from a single file
Put the tests.php file anywhere in your project.
Change the second-to-last line from
runAll(__DIR__ . '/../..');
to
runAll(__DIR__);
Then, on your command line:
php test.php
This will run all the *.test.php files in the folder you put the test.php
in, and in all its subfolders.