add unittests for BaseCommand
add unittests for callback dispatching