]> git.vpit.fr Git - perl/modules/CPANPLUS-Dist-Gentoo.git/commitdiff
Extend coverage of spaceship operators for atoms
authorVincent Pit <vince@profvince.com>
Sat, 11 Sep 2010 14:32:50 +0000 (16:32 +0200)
committerVincent Pit <vince@profvince.com>
Sat, 11 Sep 2010 14:32:50 +0000 (16:32 +0200)
t/31-atom-cmp.t

index 82623d71f909841b6d9f1fb37c57d61b941843fc..580101012b763481acef6c3af74bd2358c0da027 100644 (file)
@@ -3,7 +3,7 @@
 use strict;
 use warnings;
 
-use Test::More tests => 6 * ((8 * 7) / 2);
+use Test::More tests => 2 * 5 * ((8 * 7) / 2);
 
 use CPANPLUS::Dist::Gentoo::Atom;
 
@@ -98,8 +98,12 @@ sub compare_ok {
 
  my $desc = join " $cmp ", map "'$_'", $a, $b;
 
- my $c   = eval "\$a $cmp \$b";
- my $err = $@;
+ my ($err, $c);
+ {
+  local $@;
+  $c   = eval "\$a $cmp \$b";
+  $err = $@;
+ }
 
  if (ref $exp eq 'Regexp') {
   like $err, $exp, "$desc should fail";
@@ -120,7 +124,17 @@ for my $t (@tests) {
   }
 
   compare_ok($a, '<=>', $b, $exp);
-  compare_ok($a, '<=>', "$b", $exp);
+
+  my $bs = "$b";
+  compare_ok($a, '<=>', $bs, $exp);
+
+  if (my $bv = $b->version) {
+   compare_ok($a, '<=>', $bv,   $exp);
+   compare_ok($a, '<=>', "$bv", $exp);
+  } else {
+   pass("$bs has no version part ($_)") for 1, 2;
+  }
+
   compare_ok($a, 'cmp', $b, $exp);
  }
 }