Initial release
- Introduce
Poll
module for generic polling - Introduce
Dir
module for common directory integration test operations
- Introduce
Item
module for common file integration test operations - Introduce
Http
module for common http integration test operations- Starting a HTTP endpoint on a given url
- Route received HTTP requests to custom handlers
- Collecting several HTTP requests until expected count
- Introduce
Log
module for centrilized logging
- Add polling shortcuts:
Poll.targetSync
for polling at "sync" targets (ex. filesystem)Poll.file
,Poll.dir
&Poll.http_*
for shortcutting common targetsPoll.untilAny
,Poll.untilLength
,Poll.untilContains
, ... for shortcutting sequence filtersPoll.untilEqual
&Poll.untilNotEqual
for shortcutting simple equalization
- Adding more logging information and customization:
Poll.errorf
for custom string formatting the error message for the polling (also available in thePollBuilder
Computation Expression)
- Adding HTTP simulation:
Http.simulate(s)
for simulating a series of HTTP responses for the same hosted HTTP server (ex. for testing retryable operations)
- Adding IO operations:
Dir.move(Undo)
,Item.move(Undo)
for moving directories/files with and reverting on disposal
- Add polling shortcuts:
Poll.untilEmpty
for shortcutting sequence filtersPoll.untilTrue
&Poll.untilFalse
for shortcutting boolean targets
- Add HTTP shortcut
Http.receive
for simple receival of a single HTTP request - Add polling alternatives with
Poll.orElse
,Poll.orElseWith
,Poll.orElseAsync
andPoll.orElseValue
when a polling sequence times-out - Make the remaining C# HTTP server calls (ex.
Http.Serverxxx
) obsolete by removing theServer
prefix
- Add logging builder to have an alternative approach on logging by introducing several custom operations
- Add cancallation and creation options to
.ToTask
extension method for more configurable control on polling C# - Restructure the logging functionality by adding a new custom simple logger instead of relying on a specific NuGet package
- Remove obsolete IO functions
- Add polling interval approaches:
Poll.exponential
for running polling sequences with an interval that gets increased exponentiallyPoll.increment
for running polling sequences with an interval that gets increased manuallyPoll.random
for running polling sequences with an random interval that gets configured with min/maxPoll.immediate
for running polling sequences without any interval between them
- Add predicate descriptions to define custom and built-in error messages to show to quickly find out which of the predicates failed and which ran successfully (
[Ok]
and[Fail]
prefix in message ofTimeoutException
)
- Add polling consumers: by registering an enqueue function, values from an external source can be used to in a polling function
- Add fixture class for small/quick fixture setup that requires a single value and some disposables
- Add temporary environment variable fixtures
- Add easy command line interaction by running a command with a set of args
- Add sync retry composition which also included in fixture composition
- Split HTTP functionality to separate package