diff --git a/C4/Labels/Label.pm b/C4/Labels/Label.pm index f62d50c0c8..cb6a631d9f 100644 --- a/C4/Labels/Label.pm +++ b/C4/Labels/Label.pm @@ -62,6 +62,8 @@ sub _check_params { sub _guide_box { my ( $llx, $lly, $width, $height ) = @_; + return unless ( defined $llx and defined $lly and + defined $width and defined $height ); my $obj_stream = "q\n"; # save the graphic state $obj_stream .= "0.5 w\n"; # border line width $obj_stream .= "1.0 0.0 0.0 RG\n"; # border color red diff --git a/t/Labels.t b/t/Labels.t index 823511b5be..0b2b804300 100644 --- a/t/Labels.t +++ b/t/Labels.t @@ -20,7 +20,7 @@ use strict; use warnings; -use Test::More tests => 6; +use Test::More tests => 10; BEGIN { use_ok('C4::Labels::Label'); @@ -36,7 +36,17 @@ is_deeply($parsed_fields, $expected_fields, '"callnumber" in label layout alias is(C4::Labels::Label::_check_params(),"0",'test checking parameters'); -ok(C4::Labels::Label::_guide_box(), 'test guide box with nothing entered'); +my ($llx,$lly,$width,$height) = ( 0, 0, 10, 10 ); +ok(!defined C4::Labels::Label::_guide_box(), + "Test guide box with undefined parameters returns undef"); +ok(!defined C4::Labels::Label::_guide_box(undef,$lly,$width,$height), + "Test guide box with undefined 'x' coordinate returns undef"); +ok(!defined C4::Labels::Label::_guide_box($llx,undef,$width,$height), + "Test guide box with undefined 'y' coordinate returns undef"); +ok(!defined C4::Labels::Label::_guide_box($llx,$lly,undef,$height), + "Test guide box with undefined 'width' returns undef"); +ok(!defined C4::Labels::Label::_guide_box($llx,$lly,$width,undef), + "Test guide box with undefined 'height' returns undef"); ok(C4::Labels::Label::_get_text_fields(), 'test getting textx fields');