- Added PHP 8.4 to the test matrix - @thekid
- Fixed handling exceptions from
#[Before]
methods - @thekid
- Merged PR #49: Use PrerequisitesFailedError for unexpected exceptions (@thekid)
- Made compatible with XP 11 - @thekid
- Fixed issue #47: Fix origin for
DidNotCatch
- @thekid
- Improve readability of generated code for
xp test -e [code]
. This is important for our verbose output mode, which will show this code in its failure messages. (@thekid)
- Merged PR #46: Use unicode characters to improve test status bar (@thekid
- Merged PR #45: Add support for user preferences via
test.ini
in environment config dir (~/.xp
or$XDG_CONFIG_HOME/xp
on Un*x,%APPDATA%\Xp
on Windows) (@thekid) - Merged PR #44: Show source code location where test errors were raised in verbose listener (@thekid)
- Fixed issue #42: No constructor error for class::method - @thekid
- Merged PR #41: Implement
Assert::throws()
- @thekid
- Fixed "Array and string offset access syntax with curly braces is deprecated" warning in TestRunner (@thekid)
- Implemented xp-framework/rfc#334: Drop PHP 5.6. The minimum required PHP version is now 7.0.0! (@thekid)
- Added compatibility with XP 10, see xp-framework/rfc#333 - @thekid
- Merged PR #39: Rewrite annotations to use map syntax instead of key/ value pairs, implementing xp-framework/rfc#335 (@thekid)
- Extended
TestSuite::runTest()
to acceptTestGroup
andXPClass
in addition toTestCase
instances (@thekid) - Fixed Class T does not have a constructor, so you cannot pass any
constructor arguments when running baseless tests with
-a ...
. (@thekid)
- Implemented feature #36 (Baseless, single-instance test classes).
Heads up: This breaks API compatibility if you have written your
own test actions: These now accept
unittest.Test
instances instead of unittest.TestCase! The unittest runner itself remains unchanged and can now run both TestCase instances as well as the new baseless test classes.- Merged PR #38: Backwards compatible Listener API
- Merged PR #37: Baseless, single-instance tests
- Rewrote
unittest.actions.VerifyThat
to no longer user the deprecatedcall_user_func()
function. (@thekid) - Made compatible with PHP 7.4 - refrain using
{}
for string offsets (@thekid)
- Merged pull request #34: Add metrics to TestResult. This adds the possibility for listeners to integrate metrics inside the test result output, e.g. coverage. See also issue #33 (@thekid)
- Fixed lang.Error (Class 'unittest\Objects' not found) error when comparing two test outcomes (@thekid)
- Merged pull request #31: Add possibility to fail all tests from within
@beforeClass
methods (@thekid)
- Fixed #30: Cannot find any test cases in xp.unittest.sources.FolderSource (@thekid)
- Merged PR #29: Allow passing subfolders directly as source, only running the tests therein as a consequence. Previously, the class loader was simply queried for all classes inside any loader the given path was a part of. (@thekid)
- Allowed all file names as arguments to test suite runner, not just
.class.php
. Instead, delegate determining classes from passed URIs to the class loading mechanism. This fixesxp test path/to/Test.php
not working in conjunction with the XP Compiler. (@thekid)
- Merged PR #28: Replace all occurrences of
xp::stringOf()
withObjects::stringOf()
(the former has been deprecated since XP9) (@thekid)
- Added PHP 7.2 to test matrix - @thekid
- Implemented issue #26: Find compiler classes. There really should be a way to determine classes and packages by using the class loading infrastructure! (@thekid)
- Merged PR #25: Map values - @thekid
- Merged PR #24: Refactor test runner - @thekid
- Fixes issue #23: Calling skip in actions doesn't work - @thekid
- Fixed issue #22: Class undefined: unittest\Objects (@thekid)
- Merged PR #21: Refactor reason field in TestWarning to contain a lang.Throwable. Fixes a fatal error (method call on array). (@thekid)
- Merged PR #20: Drop dependency on xp-framework/io-collections, preventing a circular-dependency situation. (@thekid)
- Merged PR #19: XP9 Compatibility - @thekid
- Dropped support for PHP 5.5 - @thekid
- Refactored code to use
typeof()
instead ofxp::typeOf()
, see xp-framework/rfc#323 (@thekid)
- Fixed "Class xp\unittest\QuietListener does not have a constructor, so you cannot pass any constructor arguments". (@thekid, @kiesel)
- Added forward compatibility with XP 8.0.0 - @thekid
- Changed detection whether to use colors in the output to check
whether writing to the console; and no longer check
TERM
orANSICON
environment variables. The XP runners guarantee ANSI color escape sequences work in all situations! (@thekid)
- Fixed issue when expected exception's message was empty. Originally reported in xp-framework/core#135 by @kiesel (@thekid)
- Adopted semantic versioning. See xp-framework/rfc#300 - @thekid
- Added version compatibility with XP 7 - @thekid
- Fix code to use
nameof()
instead of the deprecatedgetClassName()
method from lang.Generic. See xp-framework/core#120 (@thekid)
- Heads up: Upgrade your runners before using this release! It uses class path precedence as defined in xp-runners/reference#11 (@thekid)
- Heads up: Bumped minimum XP version required to XP 6.10.0 - @thekid
- Merged PR #14: Use a "TL;DR" style for displaying help. This will show when used together with the new XP runners xp-framework/rfc#303 (@thekid)
- Fix issue #16: Fatal error when no testcases are found - @thekid
- Fixed incorrect class name for ColoredBarListener which rendered it
unusable. It now works again as expected, use the following options:
unittest -q -l ColoredBar - src/test/php
(@thekid)
- Fixed issue #13: assertEquals() and non-XP objects - @thekid
- Merged pull request #12: Use symbols that also work in Windows console (@thekid)
- Added integration with new XP subcommand runners:
xp test [args]
. See xp-framework/rfc#303 (@thekid) - Heads up: Bumped minimum XP version required to XP 6.9.1 - @thekid
- Merged pull request #7: Wrap native exceptions - @thekid
- Merged pull request #9: Refactor sources - @thekid
- Merged pull request #11: Add "stop after first failing test" option (@thekid)
- Merged pull request #10: Refactor: Provide test cases which greatly simplifies code inside source implementations and removes duplication (@thekid)
- Merged pull request #6: Refactor: Actions' before and after runlogic (@thekid)
- Changed
fail()
to also work without actual and expected parameters (@thekid) - Changed test case execution to catch PHP5 and PHP7 base exceptions from test setup and teardown and make them fail tests. See xp-framework/xp-framework#382 (@thekid)
- Added dependency on io.collections - @thekid
- Removed dependency on util.collections - @thekid
- Fixed forward compatibility with XP 6.6.0 - @thekid
- Changed
TestSuite::addTestClass()
to return class added instead of list of ignored test methods. The latter is dependant on the internal implementation and also not used anywhere. (@thekid)
- Heads up: Bumped minimum PHP version required to PHP 5.5. See PR #4 (@thekid)
- MFH: Fixed
unittest.XmlTestListener::uriFor()
raising exceptions - @thekid - Heads up: Split library from xp-framework/core as per xp-framework/rfc#293 (@thekid)