Condition Coverage

blib/lib/Graphics/Framebuffer.pm
Criterion Covered Total %
condition 26 632 4.1


and 3 conditions

line !l l&&!r l&&r condition
2645 0 2 0 not defined $ENV{'DISPLAY'} and defined $self->{'FB_DEVICE'}
2 0 0 not defined $ENV{'DISPLAY'} and defined $self->{'FB_DEVICE'} and -e $self->{'FB_DEVICE'}
2 0 0 not defined $ENV{'DISPLAY'} and defined $self->{'FB_DEVICE'} and -e $self->{'FB_DEVICE'} and open $self->{'FB'}, '+<', $self->{'FB_DEVICE'}
2 0 0 exists $ENV{'DISPLAY'} and -e $self->{'FB_DEVICE'}
2792 0 0 0 $self->{'fscreeninfo'}{'line_length'} < $self->{'fscreeninfo'}{'smem_len'} and $self->{'fscreeninfo'}{'line_length'} > 0
2824 0 0 0 $self->{'BITS'} == 32 and $self->{'vscreeninfo'}{'bitfields'}{'alpha'}{'length'} == 0
3017 0 0 0 $ro < $go and $go < $bo
0 0 0 $bo < $go and $go < $ro
0 0 0 $go < $ro and $ro < $bo
0 0 0 $go < $bo and $bo < $ro
0 0 0 $bo < $ro and $ro < $go
0 0 0 $ro < $bo and $bo < $go
3188 0 0 0 defined $fonts and scalar @{$fonts;} == 1
3269 0 0 0 $mode <= 10 && $mode >= 0
3590 0 0 0 exists $self->{'history'} and defined $self->{'history'}{$y}{$x}
3592 0 0 0 $index >= 0 and $index <= $self->{'fscreeninfo'}{'smem_len'} - $self->{'BYTES'}
3643 0 0 0 $error and $self->{'SHOW_ERRORS'}
3906 0 0 0 $self->{'ACCELERATED'} and $size == 1
0 0 0 $self->{'ACCELERATED'} and $size == 1 and not $antialiased
3936 0 0 0 $x_end == $start_x and $y_end == $start_y
3971 0 0 0 $start_x < $x_end and $start_y < $y_end
0 0 0 $start_x > $x_end and $start_y < $y_end
0 0 0 $start_x < $x_end and $start_y > $y_end
0 0 0 $start_x > $x_end and $start_y > $y_end
3998 0 0 0 $start_x < $x_end and $start_y < $y_end
0 0 0 $start_x > $x_end and $start_y < $y_end
0 0 0 $start_x < $x_end and $start_y > $y_end
0 0 0 $start_x > $x_end and $start_y > $y_end
4024 0 0 0 $start_x < $x_end and $start_y < $y_end
0 0 0 $start_x > $x_end and $start_y < $y_end
0 0 0 $start_x < $x_end and $start_y > $y_end
0 0 0 $start_x > $x_end and $start_y > $y_end
4274 0 0 0 $self->{'ACCELERATED'} and $mode == 1
4479 0 0 0 $@ and $self->{'SHOW_ERRORS'}
4798 0 0 0 $cy_y <=> $old_cy_y and $cyy <=> $cy_y
4855 0 0 0 $cy_y <=> $old_cy_y and $cyy <=> $cy_y
4884 0 0 0 exists $self->{'history'} and not $history_on
4967 0 0 0 $x0 == $x1 and $y0 == $y1
5017 0 0 0 $ymy != $lymy and $ymy != $lymx
0 0 0 $ymy != $lymy and $ymy != $lymx and $ymy != $lypx
0 0 0 $ymy != $lymy and $ymy != $lymx and $ymy != $lypx and $ymy != $lypy
5024 0 0 0 $ymx != $lymx and $ymx != $lymy
0 0 0 $ymx != $lymx and $ymx != $lymy and $ymx != $lypx
0 0 0 $ymx != $lymx and $ymx != $lymy and $ymx != $lypx and $ymx != $lypy
5032 0 0 0 $ypy != $lypy and $ypy != $lypx
0 0 0 $ypy != $lypy and $ypy != $lypx and $ypy != $lymy
0 0 0 $ypy != $lypy and $ypy != $lypx and $ypy != $lymy and $ypy != $lymx
5039 0 0 0 $ypx != $lypx and $ypx != $lypy
0 0 0 $ypx != $lypx and $ypx != $lypy and $ypx != $lymx
0 0 0 $ypx != $lypx and $ypx != $lypy and $ypx != $lymx and $ypx != $lymy
5045 0 0 0 $ymy != $lymy and $ymy != $lymx
0 0 0 $ymy != $lymy and $ymy != $lymx and $ymy != $lypx
0 0 0 $ymy != $lymy and $ymy != $lymx and $ymy != $lypx and $ymy != $lypy
5050 0 0 0 $ymx != $lymx and $ymx != $lymy
0 0 0 $ymx != $lymx and $ymx != $lymy and $ymx != $lypx
0 0 0 $ymx != $lymx and $ymx != $lymy and $ymx != $lypx and $ymx != $lypy
5057 0 0 0 $ypy != $lypy and $ypy != $lypx
0 0 0 $ypy != $lypy and $ypy != $lypx and $ypy != $lymy
0 0 0 $ypy != $lypy and $ypy != $lypx and $ypy != $lymy and $ypy != $lymx
5062 0 0 0 $ypx != $lypx and $ypx != $lypy
0 0 0 $ypx != $lypx and $ypx != $lypy and $ypx != $lymx
0 0 0 $ypx != $lypx and $ypx != $lypy and $ypx != $lymx and $ypx != $lymy
5069 0 0 0 $ymy != $lymy and $ymy != $lymx
0 0 0 $ymy != $lymy and $ymy != $lymx and $ymy != $lypx
0 0 0 $ymy != $lymy and $ymy != $lymx and $ymy != $lypx and $ymy != $lypy
5073 0 0 0 $ymx != $lymx and $ymx != $lymy
0 0 0 $ymx != $lymx and $ymx != $lymy and $ymx != $lypx
0 0 0 $ymx != $lymx and $ymx != $lymy and $ymx != $lypx and $ymx != $lypy
5079 0 0 0 $ypy != $lypy and $ypy != $lypx
0 0 0 $ypy != $lypy and $ypy != $lypx and $ypy != $lymy
0 0 0 $ypy != $lypy and $ypy != $lypx and $ypy != $lymy and $ypy != $lymx
5083 0 0 0 $ypx != $lypx and $ypx != $lypy
0 0 0 $ypx != $lypx and $ypx != $lypy and $ypx != $lymx
0 0 0 $ypx != $lypx and $ypx != $lypy and $ypx != $lymx and $ypx != $lymy
5130 0 0 0 $x0 == $x1 and $y0 == $y1
5139 0 0 0 $height and $width
5257 0 0 0 $params->{'coordinates'}[$ip] < $y && $params->{'coordinates'}[$jp] >= $y || $params->{'coordinates'}[$jp] < $y && $params->{'coordinates'}[$ip] >= $y and $params->{'coordinates'}[$i] <= $x || $params->{'coordinates'}[$j] <= $x
5329 0 0 0 exists $saved->{'image'} and defined $saved->{'image'}
5342 0 0 0 exists $params->{'hatch'} and defined $params->{'hatch'}
5382 0 0 0 $@ and $self->{'SHOW_ERRORS'}
5492 0 0 0 $width and $height
5531 0 0 0 $@ and $self->{'SHOW_ERRORS'}
5979 0 0 0 $@ and $self->{'SHOW_ERRORS'}
6254 0 0 0 $set =~ /^\d+$/ and $set >= 0
0 0 0 $set =~ /^\d+$/ and $set >= 0 and $set <= 2
6354 0 0 0 $h > 1 and $self->{'ACCELERATED'} == 1
6416 0 0 0 defined $params->{'image'} and $params->{'image'} ne ''
0 0 0 defined $params->{'image'} and $params->{'image'} ne '' and $h
0 0 0 defined $params->{'image'} and $params->{'image'} ne '' and $h and $w
6450 0 0 0 $index >= 0 and $index <= $max
0 0 0 $index >= 0 and $index <= $max and $idx >= 0
0 0 0 $index >= 0 and $index <= $max and $idx >= 0 and $idx <= length($scrn) - $bytes
6782 0 0 0 $@ and $self->{'SHOW_ERRORS'}
6902 0 0 0 $@ and $self->{'SHOW_ERRORS'}
6946 0 0 0 $@ and $self->{'SHOW_ERRORS'}
7255 0 0 2 exists $params->{'wscale'} and defined $params->{'wscale'}
7291 0 0 0 defined $params->{'rotate'} and abs $params->{'rotate'} > 0
0 0 0 defined $params->{'rotate'} and abs $params->{'rotate'} > 0 and abs($params->{'rotate'} < 360)
7303 0 0 0 $@ and $self->{'SHOW_ERRORS'}
7342 0 0 0 $self->{'ACCELERATED'} and not $aa
7553 0 0 0 -f "$path/$file" and -s "$path/$file"
7556 0 0 0 $file =~ /\.ttf$/i and $self->{'Imager-Has-TrueType'} || $self->{'Imager-Has-Freetype2'}
0 0 0 $file =~ /\.afb$/i and $self->{'Imager-Has-Type1'}
7742 0 0 0 $@ and $self->{'SHOW_ERRORS'}
7753 0 0 0 $@ and $self->{'SHOW_ERRORS'}
7778 0 0 0 defined $orientation and $orientation
7805 0 0 0 $params->{'file'} =~ /\.(gif|png)$/i and not exists $params->{'width'}
0 0 0 $params->{'file'} =~ /\.(gif|png)$/i and not exists $params->{'width'} and not exists $params->{'height'}
7882 0 0 0 defined $params->{'x'} and defined $params->{'y'}
8674 0 0 0 $self->{'WAIT_FOR_CONSOLE'} and not $self->active_console

or 2 conditions

line l !l condition
2308 0 2 $Imager::formats{'tt'} || 0
0 2 $Imager::formats{'t1'} || 0
0 2 $Imager::formats{'ft2'} || 0
2810 0 0 $self->{'vscreeninfo'}{'xoffset'} || 0
2811 0 0 $self->{'vscreeninfo'}{'yoffset'} || 0
3481 2 1 shift() || ''
3560 0 0 $params->{'x'} || 0
3561 0 0 $params->{'y'} || 0
3562 0 0 $params->{'pixel_size'} || 1
3898 0 0 $params->{'pixel_size'} || 1
3902 0 0 $params->{'antialiased'} || 0
4174 0 0 $params->{'pixel_size'} || 1
4175 0 0 $params->{'closed'} || 0
4176 0 0 $params->{'filled'} || 0
4259 0 0 $params->{'radius'} || 1
4261 0 0 $params->{'start_degrees'} || 0
4262 0 0 $params->{'end_degrees'} || 360
4263 0 0 $params->{'granularity'} || 0.1
4265 0 0 $params->{'mode'} || 0
4266 0 0 $params->{'pixel_size'} || 1
4410 0 0 $params->{'hatch'} || 'dots16'
4436 0 0 $params->{'gradient'}{'direction'} || 'vertical'
4446 0 0 $params->{'gradient'}{'direction'} || 'vertical'
4690 0 0 $params->{'xradius'} || 1
4691 0 0 $params->{'yradius'} || 1
4696 0 0 $params->{'filled'} || 0
4697 0 0 $params->{'factor'} || 1
4698 0 0 $params->{'pixel_size'} || 1
4933 0 0 int $params->{'bx'} || 0
4934 0 0 int $params->{'by'} || 0
4935 0 0 int $params->{'bxx'} || 1
4936 0 0 int $params->{'byy'} || 1
4938 0 0 $params->{'filled'} || 0
4940 0 0 $params->{'pixel_size'} || 1
5224 0 0 $params->{'pixel_size'} || 1
5225 0 0 $params->{'antialiased'} || 0
5289 0 0 $params->{'gradient'}{'direction'} ||= 'vertical'
5361 0 0 $params->{'hatch'} || 'dots16'
5369 0 0 $params->{'antialiased'} || 0
5520 0 0 $type || 'dots16'
5585 0 0 int $params->{'filled'} || 0
5586 0 0 int $params->{'pixel_size'} || 1
5587 0 0 int $params->{'radius'} || 0
5730 2 2 shift() || 'RAW_FOREGROUND_COLOR'
5888 0 0 $params->{'gradient'}{'direction'} ||= 'vertical'
6016 0 0 int $params->{'old'}{'red'} || 0
6017 0 0 int $params->{'old'}{'green'} || 0
6018 0 0 int $params->{'old'}{'blue'} || 0
6020 0 0 int $params->{'new'}{'red'} || 0
6021 0 0 int $params->{'new'}{'green'} || 0
6022 0 0 int $params->{'new'}{'blue'} || 0
6206 0 0 shift() || 1
6408 0 0 $params->{'x'} || 0
6409 0 0 $params->{'y'} || 0
6410 0 0 $params->{'width'} || 1
6411 0 0 $params->{'height'} || 1
6933 0 0 $params->{'scale'}{'scale_type'} || 'min'
7242 0 2 int $params->{'x'} || 0
7243 0 2 int $params->{'y'} || 0
7244 0 2 int $params->{'pwidth'} || 6
7245 0 2 int $params->{'pheight'} || 6
7246 2 0 int $params->{'height'} || 6
7247 2 0 $params->{'text'} || ' '
7249 2 0 $params->{'bounding_box'} || 0
7250 2 0 $params->{'center'} || 0
7252 2 0 $params->{'antialias'} || 0
7438 0 0 int $params->{'x'} || 0
7439 0 0 int $params->{'y'} || 0
7440 0 0 int $params->{'size'} || 16
7441 0 0 $params->{'text'} || ' '
7443 0 0 $params->{'justify'} || 'left'
7445 0 0 int $params->{'line_spacing'} || 0
7813 0 0 $params->{'scale_type'} || 'min'
7818 0 0 $params->{'scale_type'} || 'min'
8003 0 0 $params->{'file'} || 'screendump.jpg'
8010 0 0 $params->{'format'} || 'jpeg'
8023 0 0 $type || 'raw'
8036 0 0 $params->{'dither'} || 'floyd'
8394 0 0 $params->{'alpha'} || 255

or 3 conditions

line l !l&&r !l&&!r condition
2792 0 0 0 $self->{'fscreeninfo'}{'line_length'} < $self->{'fscreeninfo'}{'smem_len'} and $self->{'fscreeninfo'}{'line_length'} > 0 or $extra > 4
2817 0 0 0 not defined $self->{'fscreeninfo'}{'smem_len'} or $self->{'fscreeninfo'}{'smem_len'} <= 0
2960 2 0 0 not defined $self->{'fscreeninfo'}{'smem_len'} or $self->{'fscreeninfo'}{'smem_len'} <= 0
3587 0 0 0 $x > $self->{'XX_CLIP'} or $y > $self->{'YY_CLIP'}
0 0 0 $x > $self->{'XX_CLIP'} or $y > $self->{'YY_CLIP'} or $x < $self->{'X_CLIP'}
0 0 0 $x > $self->{'XX_CLIP'} or $y > $self->{'YY_CLIP'} or $x < $self->{'X_CLIP'} or $y < $self->{'Y_CLIP'}
3594 0 0 0 substr($self->{'SCREEN'}, $index, $self->{'BYTES'}) || "\000" x $self->{'BYTES'}
3697 0 0 0 $x > $self->{'XX_CLIP'} or $y > $self->{'YY_CLIP'}
0 0 0 $x > $self->{'XX_CLIP'} or $y > $self->{'YY_CLIP'} or $x < $self->{'X_CLIP'}
0 0 0 $x > $self->{'XX_CLIP'} or $y > $self->{'YY_CLIP'} or $x < $self->{'X_CLIP'} or $y < $self->{'Y_CLIP'}
4181 0 0 0 $params->{'points'} || scalar(@{$params->{'coordinates'};}) / 2
4293 0 0 0 $sx <=> $ox or $sy <=> $oy
4327 0 0 0 $sx <=> $ox or $sy <=> $oy
4719 0 0 0 $history_on or not $filled
0 0 0 $history_on or not $filled or $size > 1
4931 0 0 0 int $params->{'xx'} || $x0
4932 0 0 0 int $params->{'yy'} || $y0
5257 0 0 0 $params->{'coordinates'}[$ip] < $y && $params->{'coordinates'}[$jp] >= $y || $params->{'coordinates'}[$jp] < $y && $params->{'coordinates'}[$ip] >= $y
0 0 0 $params->{'coordinates'}[$i] <= $x || $params->{'coordinates'}[$j] <= $x
5397 0 0 0 $type->{'width'} != $width or $type->{'height'} != $height
5737 2 0 2 $params->{'alpha'} || $def_alpha
5870 0 0 0 $x < $self->{'X_CLIP'} or $x > $self->{'XX_CLIP'}
0 0 0 $x < $self->{'X_CLIP'} or $x > $self->{'XX_CLIP'} or $y < $self->{'Y_CLIP'}
0 0 0 $x < $self->{'X_CLIP'} or $x > $self->{'XX_CLIP'} or $y < $self->{'Y_CLIP'} or $y > $self->{'YY_CLIP'}
6023 0 0 0 int $params->{'new'}{'alpha'} || $self->{'COLOR_ALPHA'}
6339 0 0 0 $params->{'x'} || $self->{'X_CLIP'}
6340 0 0 0 $params->{'y'} || $self->{'Y_CLIP'}
6343 0 0 0 $params->{'width'} || $clipw
6344 0 0 0 $params->{'height'} || $cliph
6469 0 0 0 substr($self->{'SCREEN'}, $ipx, $bytes) || "\000" x $bytes
6519 0 0 0 substr($self->{'SCREEN'}, $ipx, $bytes) || "\000" x $bytes
6584 0 0 0 $YY < $yclip or $params->{'height'} < 1
0 0 0 $YY < $yclip or $params->{'height'} < 1 or $XX < $xclip
0 0 0 $YY < $yclip or $params->{'height'} < 1 or $XX < $xclip or $params->{'x'} > $xxclip
6840 0 0 0 abs $degrees == 360 or $degrees == 0
6841 0 0 0 $params->{'rotate'}{'quality'} eq 'high' or $self->{'ACCELERATED'} == 0
6886 0 0 0 abs $degrees == 90 or abs $degrees == 180
0 0 0 abs $degrees == 90 or abs $degrees == 180 or abs $degrees == 270
6963 0 0 0 $params->{'center'} == 1 or $params->{'center'} == 3
6966 0 0 0 $params->{'center'} == 2 or $params->{'center'} == 3
7248 0 2 0 $params->{'face'} || $self->{'FONT_FACE'}
7251 0 2 0 $params->{'font_path'} || $self->{'FONT_PATH'}
7331 0 0 0 $TTF_pw <= 0 or $TTF_ph <= 0
7442 0 0 0 $params->{'face'} || $self->{'FONT_FACE'}
7446 0 0 0 $params->{'font_path'} || $self->{'FONT_PATH'}
7556 0 0 0 $self->{'Imager-Has-TrueType'} || $self->{'Imager-Has-Freetype2'}
7808 0 0 0 $params->{'width'} || $w
7809 0 0 0 $params->{'height'} || $h