CommandError wraps an occurring error together with the argument that was
passed when the command was called.
This sort of objects are emitted on the .thrownExceptions ValueListenable
of the Command
Combined execution state of an RxCommand
Will be issued for any state change of any of the fields
During normal command execution you will get this items listening at the command's .results observable.
MockCommand allows you to easily mock an RxCommand for your Unit and UI tests
Mocking a command with mockitohttps://pub.dartlang.org/packages/mockito has its limitations.
RxCommand capsules a given handler function that can then be executed by its execute method.
The result of this method is then published through its Observable (Observable wrap Dart Streams)
Additionally it offers Observables for it's current execution state, if the command can be executed and for
all possibly thrown exceptions during command execution.
Implementation of RxCommand to handle async handler functions. Normally you will not instantiate this directly but use one of the factory
methods of RxCommand.