Download the PHP package texthtml/doctest without Composer
On this page you can find all versions of the php package texthtml/doctest. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download texthtml/doctest
More information about texthtml/doctest
Files in texthtml/doctest
Package doctest
Short Description Test code examples in PHP comments
License AGPL-3.0-or-later
Informations about the package doctest
doctest PHP
Test your docblock code examples.
doctest
looks for php examples in your functions, methods classes & interfaces
comments and execute them to ensure they are correct.
How to write examples
The simplest way is to add codeblocks in your comments, and use assert()
to
check for invariants. If, when executing the example there is an exception, the
example will be marked as failed.
- assert(factorial(0) === 1);
- assert(factorial(5) === 120);
Assertions
One easy way to throw exceptions when something is unexpected is to use
assert()
. But to make it nicer to write assertions
and have better error messages automatically, you can call the assertion helpers
from webmozart/assert
with the self::assert*
shortcut:
Testing exceptions
Sometimes we want to show that some code will throw an exception, we can do
that by adding an inline comment anywhere in the example with the following
format: // @throws [exception class] [exception message]
Note: code after the exception won't be executed so any in-code assertions coming after the first exception won't be verified.
Testing output
By default doctest
will make an example fail if it produce any output unless
it's documented with one or more @prints
inline comments anywhere in the
example with the following format:
`// @prints [text]. That's to make sure that any output produced is expected.
Installation
Usage
Simply run the doctest
command and it will look for examples to test in your
src/
folder. Call doctest --help
for customizing where to look for examples
and other options.
TODO
- Junit output
- Find PHP examples in markdown
All versions of doctest with dependencies
composer-runtime-api Version ^2.2.2
symfony/finder Version ^6.1|^7.0
symfony/console Version ^6.1|^7.0
symfony/event-dispatcher Version ^6.1|^7.0
webmozart/assert Version ^1.11