Branch Coverage

lib/EV/Hiredis.xs
Criterion Covered Total %
branch 14 98 14.2


line true false branch
34 0 0 if (NULL == self->error_handler) return;
41 0 0 PUSHMARK(SP);
42 0 0 XPUSHs(error);
47 0 0 FREETMPS;
52 0 0 if (NULL == self->error_handler) return;
60 0 1 while (!ngx_queue_empty(&self->cb_queue)) {
73 0 0 if (REDIS_OK != status) {
78 0 0 if (NULL == self->connect_handler) return;
85 0 0 PUSHMARK(SP);
90 0 0 FREETMPS;
99 0 0 if (REDIS_OK == status) {
118 0 0 if (REDIS_OK != r) {
128 0 0 if (self->ac->err) {
159 0 0 for (i = 0; i < reply->elements; i++) {
178 0 0 if (NULL == reply) {
188 0 0 PUSHMARK(SP);
195 0 0 FREETMPS;
204 0 0 PUSHMARK(SP);
206 0 0 if (((redisReply*)reply)->type == REDIS_REPLY_ERROR) {
217 0 0 FREETMPS;
221 0 0 if (0 == cbt->persist) {
232 0 11 I_EV_API("EV::Hiredis");
11 0 I_EV_API("EV::Hiredis");
11 0 I_EV_API("EV::Hiredis");
0 11 I_EV_API("EV::Hiredis");
252 0 1 if (NULL != self->ac) {
256 1 0 if (NULL != self->error_handler) {
260 0 1 if (NULL != self->connect_handler) {
274 0 0 if (NULL != self->ac) {
280 0 0 if (NULL == self->ac) {
292 0 0 if (NULL != self->ac) {
298 0 0 if (NULL == self->ac) {
310 0 0 if (NULL == self->ac) {
322 0 1 if (NULL != self->error_handler) {
327 1 0 if (NULL != handler) {
340 0 0 if (NULL != handler) {
341 0 0 if (NULL != self->connect_handler) {
349 0 0 if (self->connect_handler) {
369 0 1 if (items <= 2) {
374 1 0 if (!(SvROK(cb) && SvTYPE(SvRV(cb)) == SVt_PVCV)) {
0 1 if (!(SvROK(cb) && SvTYPE(SvRV(cb)) == SVt_PVCV)) {
378 1 0 if (NULL == self->ac) {
383 0 0 Newx(argv, sizeof(char*) * argc, char*);
384 0 0 Newx(argvlen, sizeof(size_t) * argc, size_t);
386 0 0 for (i = 0; i < argc; i++) {
387 0 0 argv[i] = SvPV(ST(i + 1), len);
396 0 0 if (0 == strcasecmp(argv[0], "subscribe")
397 0 0 || 0 == strcasecmp(argv[0], "psubscribe")
398 0 0 || 0 == strcasecmp(argv[0], "monitor")