Skip to content

Releases: dogmatiq/testkit

Version 0.18.1

05 Oct 11:02
v0.18.1
19c54bb
Compare
Choose a tag to compare
Version 0.18.1 Pre-release
Pre-release

Changed

  • Use enginekit/message instead of configkit/message.
  • It is no longer possible to (mis-)use a single message type as both a pointer and a non-pointer. If a type implements dogma.Command, dogma.Event, or dogma.Timeout using pointer receivers then a pointer type must be used; otherwise, a non-pointer type must be used.

Version 0.18.0

03 Oct 03:05
v0.18.0
216e22e
Compare
Choose a tag to compare
Version 0.18.0 Pre-release
Pre-release

Added

  • Added Not() expectation, which negates a single expectation. Not() is functionally equivalent to using NoneOf() with a single argument, but produces more intuitive test reports.
  • Added CommandValidationScope(), EventValidationScope(), and TimeoutValidationScope() to help when testing message validation logic.

Version 0.17.2

24 Sep 23:05
v0.17.2
3dd93f1
Compare
Choose a tag to compare
Version 0.17.2 Pre-release
Pre-release

Fixed

  • Fix argument type of ToRecordEvent() and ToRecordEventOfType().

Version 0.17.1

24 Sep 22:30
v0.17.1
2e80750
Compare
Choose a tag to compare
Version 0.17.1 Pre-release
Pre-release

Fixed

  • Fixed issue that caused an empty SUGGESTIONS section to be printed on test reports in some circumstances.
  • ToExecuteCommandMatching(), ToOnlyExecuteCommandsMatching(), ToRecordEventMatching() and ToOnlyRecordEventsMatching() now properly report impossible assertions when the predicate's argument type is not a recognized message.

Version 0.17.0

20 Aug 23:46
v0.17.0
b6a0d2f
Compare
Choose a tag to compare
Version 0.17.0 Pre-release
Pre-release

Added

  • Added ReportGenerationContext to hold information required when generating test reports.
  • Added Test.Annotate() to add human-readable annotations to values within test reports.

Changed

  • [BC] Changed Predicate.Report() to accept a ReportGenerationContext instead of individual arguments.

Version 0.16.0

17 Aug 05:05
v0.16.0
23e435c
Compare
Choose a tag to compare
Version 0.16.0 Pre-release
Pre-release

Changed

  • Bumped Dogma to v0.14.0, which involved removing any calls to the TimeoutHint() method on the handler interfaces, which has been removed.
  • ToExecuteCommandMatching() and ToRecordEventMatching() now accept predicate functions with a more specific argument type than dogma.Command and dogma.Event, respectively. Any message that does not match the argument type of the predicate is ignored.
  • ToOnlyExecuteCommandsMatching() and ToOnlyRecordEventsMatching() now accept predicate functions with a more specific argument type than dogma.Command and dogma.Event, respectively. Any message that does not match the argument type of the predicate is considered a failure.

Fixed

  • Fixed poor wording of ToOnlyExecuteCommandsMatching() and ToOnlyRecordEventsMatching() failure reports when no messages were matched.
  • Fixed a few swapped references to dogma.Command and dogma.Event which were aliases preior to Dogma v0.14.0.

Version 0.15.4

15 Aug 23:37
v0.15.4
41d4a3e
Compare
Choose a tag to compare
Version 0.15.4 Pre-release
Pre-release

Added

  • Added ToExecuteCommandType[T]() and ToRecordEventType[T]() expectations.

Deprecated

  • Marked ToExecuteCommandOfType() and ToRecordEventOfType() as deprecated. These functions will be removed in a future release; use the new generic versions instead.

Version 0.15.3

15 Aug 23:15
v0.15.3
f14db0e
Compare
Choose a tag to compare
Version 0.15.3 Pre-release
Pre-release

Changed

  • Use dogma.Command, Event and Timeout interfaces instead of dogma.Message where appropriate.

Fixed

  • Supress rendering of explanation and suggestions in test reports when a failed expectation is negated by NoneOf() (thanks [@sameaste92]).

Version 0.15.2

24 Jul 00:18
v0.15.2
369e3e5
Compare
Choose a tag to compare
Version 0.15.2 Pre-release
Pre-release

Fixed

  • Fixed log messages about disabled handlers to properly indicate why they are disabled.

Version 0.15.1

16 Jul 03:51
v0.15.1
136df37
Compare
Choose a tag to compare
Version 0.15.1 Pre-release
Pre-release

Added

  • Added support for Disable() method in dogmatiq/dogma v0.13.1.