X-Git-Url: http://git.vpit.fr/?a=blobdiff_plain;f=lib%2FTest%2FLeaner.pm;h=d88ecf6779afe7397af9342eff79ebd8aa0d0562;hb=627cfc1e101ffcd0a1e0039e7eb333d5efd15d8a;hp=c4c577d2dde61f0eeece12b0f6ccdf9c6ff1a721;hpb=eb0bd56068ca67ea93f621ef38f59dec9bdbbcd8;p=perl%2Fmodules%2FTest-Leaner.git diff --git a/lib/Test/Leaner.pm b/lib/Test/Leaner.pm index c4c577d..d88ecf6 100644 --- a/lib/Test/Leaner.pm +++ b/lib/Test/Leaner.pm @@ -122,6 +122,7 @@ our @EXPORT = qw< ok is isnt + cmp_ok like unlike diag @@ -294,12 +295,8 @@ BEGIN { local $@; eval <<"IS_BINOP"; sub is_$name (\$\$;\$) { - my (\$x, \$y, \$desc) = \@_; - no warnings 'uninitialized'; - \@_ = ( - (not(defined \$x xor defined \$y) and \$x $op \$y), - \$desc, - ); + my (\$got, \$expected, \$desc) = \@_; + \@_ = ((\$got $op \$expected), \$desc); goto &ok; } IS_BINOP @@ -307,30 +304,39 @@ IS_BINOP } } -{ - no warnings 'once'; - *is = \&is_eq; - *like = \&is_like; - *unlike = \&is_unlike; +sub is ($$;$) { + my ($got, $expected, $desc) = @_; + no warnings 'uninitialized'; + @_ = ( + (not(defined $got xor defined $expected) and $got eq $expected), + $desc, + ); + goto &ok; } sub isnt ($$;$) { - my ($x, $y, $desc) = @_; + my ($got, $expected, $desc) = @_; no warnings 'uninitialized'; @_ = ( - ((defined $x xor defined $y) or $x ne $y), + ((defined $got xor defined $expected) or $got ne $expected), $desc, ); goto &ok; } +{ + no warnings 'once'; + *like = \&is_like; + *unlike = \&is_unlike; +} + sub cmp_ok ($$$;$) { - my ($x, $op, $y, $desc) = @_; + my ($got, $op, $expected, $desc) = @_; my $name = $binops{$op}; croak("Operator $op not supported") unless defined $name; - @_ = ($x, $y, $desc); + @_ = ($got, $expected, $desc); no strict 'refs'; - goto &{__PACKAGE__."is_$name"}; + goto &{__PACKAGE__."::is_$name"}; } sub _diag_fh {