39 using LERR_(UNBOUND_ARGUMENTS);
44 const Symbol COMMAND_1{
"test.queue.command1"};
45 const Symbol COMMAND_3{
"test.queue.command3"};
69 .operation (command1::operate)
70 .captureUndo (command1::capture)
71 .undoOperation (command1::undoIt)
74 .operation (command3::operate)
75 .captureUndo (command3::capture)
76 .undoOperation (command3::undoIt)
81 Command::remove (COMMAND_1);
82 Command::remove (COMMAND_3);
91 verifyExecutabilityCheck();
105 CHECK (isnil(queue));
110 CHECK (2 == queue.size());
113 CHECK (1 == queue.size());
117 CHECK (0 == queue.size());
118 CHECK (queue.empty());
123 verifyExecutabilityCheck()
133 CHECK (1 == queue.size());
136 CHECK (1 == queue.size());
138 queue.pop().execSync();
Helper class used solely for defining a Command-Object.
Command newInstance() const
create independent (anonymous) clone copy of this command
#define VERIFY_ERROR(ERROR_ID, ERRONEOUS_STATEMENT)
Macro to verify that a statement indeed raises an exception.
Steam-Layer implementation namespace root.
Implementation building block of SteamDispatcher to organise commands.
Token or Atom with distinct identity.
Marker types to indicate a literal string and a Symbol.
Simple test class runner.
Tiny helper functions and shortcuts to be used everywhere Consider this header to be effectively incl...
Implementation of the Session's command queue.
ExecResult execSync()
invoke using a default "synchronous" execution pattern
Some dummy command functions used for building unit test cases.
Handle object representing a single Command instance to be used by client code.
RET bind()
Accept dummy binding (0 Arg)
Actually defining a command and binding it to execution parameters.