Classes

Line coverage against cyclomatic complexity. Bubble size is the number of executable lines; hover for details, click to navigate.

0% 20% 40% 60% 80% 100% 0 20 40 60 Line Coverage (%) Cyclomatic Complexity Tomaj\Hermes\Dispatcher — Coverage: 99.1% | Lines: 114 | Complexity: 47 Tomaj\Hermes\Driver\LazyRabbitMqDriver — Coverage: 97.9% | Lines: 48 | Complexity: 16 Tomaj\Hermes\Driver\AmazonSqsDriver — Coverage: 97.8% | Lines: 46 | Complexity: 16 Tomaj\Hermes\Driver\PredisSetDriver — Coverage: 97.8% | Lines: 45 | Complexity: 20 Tomaj\Hermes\Driver\RedisSetDriver — Coverage: 95.1% | Lines: 41 | Complexity: 21 Tomaj\Hermes\MessageSerializer — Coverage: 100.0% | Lines: 36 | Complexity: 18 Tomaj\Hermes\Shutdown\SignalStop — Coverage: 96.0% | Lines: 25 | Complexity: 13 Tomaj\Hermes\Emitter — Coverage: 100.0% | Lines: 16 | Complexity: 5 Tomaj\Hermes\Shutdown\SharedFileShutdown — Coverage: 100.0% | Lines: 13 | Complexity: 7 Tomaj\Hermes\Message — Coverage: 100.0% | Lines: 10 | Complexity: 9 Tomaj\Hermes\Shutdown\PredisShutdown — Coverage: 100.0% | Lines: 6 | Complexity: 4 Tomaj\Hermes\Shutdown\RedisShutdown — Coverage: 100.0% | Lines: 5 | Complexity: 4 Tomaj\Hermes\Handler\EchoHandler — Coverage: 100.0% | Lines: 4 | Complexity: 1 Tomaj\Hermes\Shutdown\ShutdownTime — Coverage: 100.0% | Lines: 3 | Complexity: 6

Sorted by descending CRAP index.

Methods

Line coverage against cyclomatic complexity. Bubble size is the number of executable lines; hover for details, click to navigate.

0% 20% 40% 60% 80% 100% 0 5 10 15 20 Line Coverage (%) Cyclomatic Complexity Tomaj\Hermes\Driver\PredisSetDriver::wait — Coverage: 97.0% | Lines: 33 | Complexity: 13 Tomaj\Hermes\Driver\RedisSetDriver::wait — Coverage: 92.3% | Lines: 26 | Complexity: 11 Tomaj\Hermes\MessageSerializer::unserialize — Coverage: 100.0% | Lines: 23 | Complexity: 15 Tomaj\Hermes\Driver\AmazonSqsDriver::wait — Coverage: 100.0% | Lines: 23 | Complexity: 10 Tomaj\Hermes\Dispatcher::handle — Coverage: 100.0% | Lines: 22 | Complexity: 6 Tomaj\Hermes\Driver\LazyRabbitMqDriver::wait — Coverage: 95.5% | Lines: 22 | Complexity: 5 Tomaj\Hermes\Dispatcher::handleMessage — Coverage: 100.0% | Lines: 18 | Complexity: 4 Tomaj\Hermes\Dispatcher::retryMessage — Coverage: 100.0% | Lines: 15 | Complexity: 8 Tomaj\Hermes\Driver\AmazonSqsDriver::__construct — Coverage: 92.3% | Lines: 13 | Complexity: 3 Tomaj\Hermes\Driver\LazyRabbitMqDriver::handleDelivery — Coverage: 100.0% | Lines: 13 | Complexity: 4 Tomaj\Hermes\MessageSerializer::serialize — Coverage: 100.0% | Lines: 12 | Complexity: 2 Tomaj\Hermes\Shutdown\SignalStop::install — Coverage: 91.7% | Lines: 12 | Complexity: 3 Tomaj\Hermes\Dispatcher::dispatch — Coverage: 100.0% | Lines: 9 | Complexity: 5 Tomaj\Hermes\Dispatcher::usesRetryTrait — Coverage: 100.0% | Lines: 8 | Complexity: 4 Tomaj\Hermes\Dispatcher::messageLoggerContext — Coverage: 100.0% | Lines: 8 | Complexity: 1 Tomaj\Hermes\Shutdown\SharedFileShutdown::shouldShutdown — Coverage: 100.0% | Lines: 8 | Complexity: 4 Tomaj\Hermes\Dispatcher::emit — Coverage: 100.0% | Lines: 7 | Complexity: 1 Tomaj\Hermes\Dispatcher::unregisterHandler — Coverage: 85.7% | Lines: 7 | Complexity: 2 Tomaj\Hermes\Emitter::emit — Coverage: 100.0% | Lines: 7 | Complexity: 1 Tomaj\Hermes\Emitter::messageLoggerContext — Coverage: 100.0% | Lines: 6 | Complexity: 1 Tomaj\Hermes\Driver\LazyRabbitMqDriver::send — Coverage: 100.0% | Lines: 6 | Complexity: 3 Tomaj\Hermes\Driver\PredisSetDriver::send — Coverage: 100.0% | Lines: 6 | Complexity: 3 Tomaj\Hermes\Shutdown\SignalStop::__destruct — Coverage: 100.0% | Lines: 6 | Complexity: 3 Tomaj\Hermes\Driver\AmazonSqsDriver::send — Coverage: 100.0% | Lines: 5 | Complexity: 1 Tomaj\Hermes\Driver\LazyRabbitMqDriver::getChannel — Coverage: 100.0% | Lines: 5 | Complexity: 2 Tomaj\Hermes\Driver\RedisSetDriver::send — Coverage: 100.0% | Lines: 5 | Complexity: 3 Tomaj\Hermes\Dispatcher::__construct — Coverage: 100.0% | Lines: 4 | Complexity: 3 Tomaj\Hermes\Message::__construct — Coverage: 100.0% | Lines: 4 | Complexity: 3 Tomaj\Hermes\Driver\AmazonSqsDriver::deleteMessage — Coverage: 100.0% | Lines: 4 | Complexity: 1 Tomaj\Hermes\Driver\RedisSetDriver::pop — Coverage: 100.0% | Lines: 4 | Complexity: 3 Tomaj\Hermes\Handler\EchoHandler::handle — Coverage: 100.0% | Lines: 4 | Complexity: 1 Tomaj\Hermes\Shutdown\SharedFileShutdown::shutdown — Coverage: 100.0% | Lines: 4 | Complexity: 2 Tomaj\Hermes\Dispatcher::registerHandlers — Coverage: 100.0% | Lines: 3 | Complexity: 2 Tomaj\Hermes\Driver\PredisSetDriver::getKey — Coverage: 100.0% | Lines: 3 | Complexity: 2 Tomaj\Hermes\Driver\RedisSetDriver::getKey — Coverage: 100.0% | Lines: 3 | Complexity: 2 Tomaj\Hermes\Shutdown\PredisShutdown::shutdown — Coverage: 100.0% | Lines: 3 | Complexity: 1 Tomaj\Hermes\Shutdown\SignalStop::received — Coverage: 100.0% | Lines: 3 | Complexity: 2 Tomaj\Hermes\Shutdown\SignalStop::describe — Coverage: 100.0% | Lines: 3 | Complexity: 4 Tomaj\Hermes\Dispatcher::reportToTracy — Coverage: 100.0% | Lines: 2 | Complexity: 3 Tomaj\Hermes\Dispatcher::shutdownReason — Coverage: 100.0% | Lines: 2 | Complexity: 2 Tomaj\Hermes\Dispatcher::nextRetry — Coverage: 100.0% | Lines: 2 | Complexity: 1 Tomaj\Hermes\Dispatcher::registerHandler — Coverage: 100.0% | Lines: 2 | Complexity: 1 Tomaj\Hermes\Dispatcher::unregisterAllHandlers — Coverage: 100.0% | Lines: 2 | Complexity: 1 Tomaj\Hermes\Dispatcher::log — Coverage: 100.0% | Lines: 2 | Complexity: 2 Tomaj\Hermes\Emitter::log — Coverage: 100.0% | Lines: 2 | Complexity: 2 Tomaj\Hermes\Driver\PredisSetDriver::__construct — Coverage: 100.0% | Lines: 2 | Complexity: 1 Tomaj\Hermes\Driver\RedisSetDriver::__construct — Coverage: 100.0% | Lines: 2 | Complexity: 1 Tomaj\Hermes\Shutdown\PredisShutdown::shouldShutdown — Coverage: 100.0% | Lines: 2 | Complexity: 2 Tomaj\Hermes\Shutdown\RedisShutdown::shouldShutdown — Coverage: 100.0% | Lines: 2 | Complexity: 2 Tomaj\Hermes\Shutdown\RedisShutdown::shutdown — Coverage: 100.0% | Lines: 2 | Complexity: 1 Tomaj\Hermes\Dispatcher::hasHandlers — Coverage: 100.0% | Lines: 1 | Complexity: 1 Tomaj\Hermes\Emitter::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 Tomaj\Hermes\Message::getId — Coverage: 100.0% | Lines: 1 | Complexity: 1 Tomaj\Hermes\Message::getCreated — Coverage: 100.0% | Lines: 1 | Complexity: 1 Tomaj\Hermes\Message::getExecuteAt — Coverage: 100.0% | Lines: 1 | Complexity: 1 Tomaj\Hermes\Message::getType — Coverage: 100.0% | Lines: 1 | Complexity: 1 Tomaj\Hermes\Message::getPayload — Coverage: 100.0% | Lines: 1 | Complexity: 1 Tomaj\Hermes\Message::getRetries — Coverage: 100.0% | Lines: 1 | Complexity: 1 Tomaj\Hermes\MessageSerializer::describe — Coverage: 100.0% | Lines: 1 | Complexity: 1 Tomaj\Hermes\Driver\AmazonSqsDriver::setupPriorityQueue — Coverage: 100.0% | Lines: 1 | Complexity: 1 Tomaj\Hermes\Driver\LazyRabbitMqDriver::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 Tomaj\Hermes\Driver\LazyRabbitMqDriver::setupPriorityQueue — Coverage: 100.0% | Lines: 1 | Complexity: 1 Tomaj\Hermes\Driver\PredisSetDriver::setupPriorityQueue — Coverage: 100.0% | Lines: 1 | Complexity: 1 Tomaj\Hermes\Driver\RedisSetDriver::setupPriorityQueue — Coverage: 100.0% | Lines: 1 | Complexity: 1 Tomaj\Hermes\Shutdown\PredisShutdown::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 Tomaj\Hermes\Shutdown\RedisShutdown::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 Tomaj\Hermes\Shutdown\SharedFileShutdown::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1 Tomaj\Hermes\Shutdown\ShutdownTime::format — Coverage: 100.0% | Lines: 1 | Complexity: 1 Tomaj\Hermes\Shutdown\ShutdownTime::parse — Coverage: 100.0% | Lines: 1 | Complexity: 3 Tomaj\Hermes\Shutdown\ShutdownTime::isRequested — Coverage: 100.0% | Lines: 1 | Complexity: 2 Tomaj\Hermes\Shutdown\SignalStop::__construct — Coverage: 100.0% | Lines: 1 | Complexity: 1

Sorted by descending CRAP index.

Method CRAP Coverage
Tomaj\Hermes\MessageSerializer::unserialize15100.0%
Tomaj\Hermes\Driver\PredisSetDriver::wait1397.0%
Tomaj\Hermes\Driver\RedisSetDriver::wait11.0692.3%
Tomaj\Hermes\Driver\AmazonSqsDriver::wait10100.0%
Tomaj\Hermes\Dispatcher::retryMessage8100.0%
Tomaj\Hermes\Dispatcher::handle6100.0%
Tomaj\Hermes\Dispatcher::dispatch5100.0%
Tomaj\Hermes\Driver\LazyRabbitMqDriver::wait595.5%
Tomaj\Hermes\Dispatcher::handleMessage4100.0%
Tomaj\Hermes\Dispatcher::usesRetryTrait4100.0%
Tomaj\Hermes\Driver\LazyRabbitMqDriver::handleDelivery4100.0%
Tomaj\Hermes\Shutdown\SharedFileShutdown::shouldShutdown4100.0%
Tomaj\Hermes\Shutdown\SignalStop::describe4100.0%
Tomaj\Hermes\Shutdown\SignalStop::install3.0191.7%
Tomaj\Hermes\Dispatcher::__construct3100.0%
Tomaj\Hermes\Dispatcher::reportToTracy3100.0%
Tomaj\Hermes\Message::__construct3100.0%
Tomaj\Hermes\Driver\AmazonSqsDriver::__construct3.0092.3%
Tomaj\Hermes\Driver\LazyRabbitMqDriver::send3100.0%
Tomaj\Hermes\Driver\PredisSetDriver::send3100.0%
Tomaj\Hermes\Driver\RedisSetDriver::send3100.0%
Tomaj\Hermes\Driver\RedisSetDriver::pop3100.0%
Tomaj\Hermes\Shutdown\ShutdownTime::parse3100.0%
Tomaj\Hermes\Shutdown\SignalStop::__destruct3100.0%
Tomaj\Hermes\Dispatcher::unregisterHandler2.0185.7%
Tomaj\Hermes\Dispatcher::shutdownReason2100.0%
Tomaj\Hermes\Dispatcher::registerHandlers2100.0%
Tomaj\Hermes\Dispatcher::log2100.0%
Tomaj\Hermes\Emitter::log2100.0%
Tomaj\Hermes\MessageSerializer::serialize2100.0%
Tomaj\Hermes\Driver\LazyRabbitMqDriver::getChannel2100.0%
Tomaj\Hermes\Driver\PredisSetDriver::getKey2100.0%
Tomaj\Hermes\Driver\RedisSetDriver::getKey2100.0%
Tomaj\Hermes\Shutdown\PredisShutdown::shouldShutdown2100.0%
Tomaj\Hermes\Shutdown\RedisShutdown::shouldShutdown2100.0%
Tomaj\Hermes\Shutdown\SharedFileShutdown::shutdown2100.0%
Tomaj\Hermes\Shutdown\ShutdownTime::isRequested2100.0%
Tomaj\Hermes\Shutdown\SignalStop::received2100.0%
Tomaj\Hermes\Dispatcher::emit1100.0%
Tomaj\Hermes\Dispatcher::nextRetry1100.0%
Tomaj\Hermes\Dispatcher::hasHandlers1100.0%
Tomaj\Hermes\Dispatcher::registerHandler1100.0%
Tomaj\Hermes\Dispatcher::unregisterAllHandlers1100.0%
Tomaj\Hermes\Dispatcher::messageLoggerContext1100.0%
Tomaj\Hermes\Emitter::__construct1100.0%
Tomaj\Hermes\Emitter::emit1100.0%
Tomaj\Hermes\Emitter::messageLoggerContext1100.0%
Tomaj\Hermes\Message::getId1100.0%
Tomaj\Hermes\Message::getCreated1100.0%
Tomaj\Hermes\Message::getExecuteAt1100.0%
Tomaj\Hermes\Message::getType1100.0%
Tomaj\Hermes\Message::getPayload1100.0%
Tomaj\Hermes\Message::getRetries1100.0%
Tomaj\Hermes\MessageSerializer::describe1100.0%
Tomaj\Hermes\Driver\AmazonSqsDriver::send1100.0%
Tomaj\Hermes\Driver\AmazonSqsDriver::setupPriorityQueue1100.0%
Tomaj\Hermes\Driver\AmazonSqsDriver::deleteMessage1100.0%
Tomaj\Hermes\Driver\LazyRabbitMqDriver::__construct1100.0%
Tomaj\Hermes\Driver\LazyRabbitMqDriver::setupPriorityQueue1100.0%
Tomaj\Hermes\Driver\PredisSetDriver::__construct1100.0%
Tomaj\Hermes\Driver\PredisSetDriver::setupPriorityQueue1100.0%
Tomaj\Hermes\Driver\RedisSetDriver::__construct1100.0%
Tomaj\Hermes\Driver\RedisSetDriver::setupPriorityQueue1100.0%
Tomaj\Hermes\Handler\EchoHandler::handle1100.0%
Tomaj\Hermes\Shutdown\PredisShutdown::__construct1100.0%
Tomaj\Hermes\Shutdown\PredisShutdown::shutdown1100.0%
Tomaj\Hermes\Shutdown\RedisShutdown::__construct1100.0%
Tomaj\Hermes\Shutdown\RedisShutdown::shutdown1100.0%
Tomaj\Hermes\Shutdown\SharedFileShutdown::__construct1100.0%
Tomaj\Hermes\Shutdown\ShutdownTime::format1100.0%
Tomaj\Hermes\Shutdown\SignalStop::__construct1100.0%