develooper Front page | perl.perl5.porters | Postings from May 2008

Re: Some smoke digging

Thread Previous | Thread Next
From:
H.Merijn Brand
Date:
May 23, 2008 03:33
Subject:
Re: Some smoke digging
Message ID:
20080523122222.5f07f3ef@pc09.procura.nl
On Fri, 23 May 2008 09:00:35 +0200, "H.Merijn Brand"
<h.m.brand@xs4all.nl> wrote:

> Finally got some time to actually *look* at the smoke reports.
> If you get all 'F' for ages, because know issues are not resolved, you
> tend to not see the difference and don't look further at all.
> 
> I WANT 'O's AGAIN!
> 
> I noticed some HP-UX 10.20 fails:
> 
>     ../lib/Math/Trig.t..........................................FAILED
>         100, 102, 109, 111, 124-127, 131, 133

The great thing about dual-lived modules, is that you can test them
outside the core. Certainly on slow machines, that saves a lot of time

t/Trig..............37/153
#   Failed test at t/Trig.t line 323.

#   Failed test at t/Trig.t line 325.

#   Failed test at t/Trig.t line 333.

#   Failed test at t/Trig.t line 335.

#   Failed test at t/Trig.t line 354.
#          got: 5.562684646268e-309
#     expected: 0

#   Failed test at t/Trig.t line 356.
#          got: 5.562684646268e-309
#     expected: 0

#   Failed test at t/Trig.t line 361.
#          got: 5.562684646268e-309
#     expected: 0

#   Failed test at t/Trig.t line 363.
#          got: -5.562684646268e-309
#     expected: 0
# Looks like you failed 8 tests of 153.
t/Trig.............. Dubious, test returned 8 (wstat 2048, 0x800)

Backups++
1.53, 1.52 and 1.49 also fail

1.48 fails differently:

t/Trig..............50/?
#   Failed test at t/Trig.t line 353.
#          got: 8.98846567431158e+307
#     expected: ++

#   Failed test at t/Trig.t line 354.
#          got: 1.1125369292536e-308
#     expected: 0

#   Failed test at t/Trig.t line 355.
#          got: 8.98846567431158e+307
#     expected: ++

#   Failed test at t/Trig.t line 356.
#          got: 1.1125369292536e-308
#     expected: 0
# Looks like you failed 4 tests of 153.
t/Trig.............. Dubious, test returned 4 (wstat 1024, 0x400)
 Failed 4/153 subtests


1.47 and 1.44 fail in quite a different category

t/Complex...........Nested quantifiers in regex; marked by <-- HERE in m/^-?+ <-- HERE +$/ at /pro/3gl/CPAN/Math-Complex-1.47/blib/lib/Math/Complex.pm line 1411, <DATA> line 544.
t/Complex........... Dubious, test returned 34 (wstat 8704, 0x2200)
 Failed 1069/1069 subtests
t/pod-coverage......ok
t/pod...............ok
t/Trig..............1/153 Nested quantifiers in regex; marked by <-- HERE in m/^-?+ <-- HERE +$/ at /pro/3gl/CPAN/Math-Complex-1.47/blib/lib/Math/Complex.pm line 1411.
# Looks like you planned 153 tests but only ran 28.
# Looks like your test died just after 28.
t/Trig.............. Dubious, test returned 255 (wstat 65280, 0xff00)
 Failed 125/153 subtests

1.37 was full OK:

t/Complex...........ok
t/pod-coverage......ok
t/pod...............ok
t/Trig..............ok
All tests successful.
Files=4, Tests=1142, 20 wallclock secs ( 2.85 usr  0.07 sys + 11.41 cusr  0.22 csys = 14.55 CPU)
Result: PASS

After changing some 'ok (expr)' to 'cmp_ok (a, op, b, cmnt)' I got this:

# Infinity [ Inf = 1.79769313486232e+308, BigDouble = 1e+40 ]


#   Failed test 'Inf * =='
#   at t/Trig.t line 323.
#          got: ++
#     expected: 1.79769313486232e+308

#   Failed test 'Inf / =='
#   at t/Trig.t line 325.
#          got: 1.79769313486232e+268
#     expected: 1.79769313486232e+308

#   Failed test '-Inf * =='
#   at t/Trig.t line 333.
#          got: ---
#     expected: -1.79769313486232e+308

#   Failed test '-Inf / =='
#   at t/Trig.t line 335.
#          got: -1.79769313486232e+268
#     expected: -1.79769313486232e+308

#   Failed test 'sech  1e5  0'
#   at t/Trig.t line 354.
#          got: 5.562684646268e-309
#     expected: 0

#   Failed test 'csch  1e5  0'
#   at t/Trig.t line 356.
#          got: 5.562684646268e-309
#     expected: 0

#   Failed test 'sech -1e5  0'
#   at t/Trig.t line 361.
#          got: 5.562684646268e-309
#     expected: 0

#   Failed test 'csch -1e5  0'
#   at t/Trig.t line 363.
#          got: -5.562684646268e-309
#     expected: 0
# Looks like you failed 8 tests of 153.

--8<--- cmp_ok.diff
--- CPAN/Math-Complex-1.54/t/Trig.t 2008-04-05 02:52:09 +0200
+++ CPAN/Math-Complex-1.54/t/Trig.t 2008-05-23 11:59:43 +0200
@@ -307,32 +307,32 @@ use Math::Trig ':radial';
     ok(near($dst1, $dst2));
 }

-print "# Infinity\n";
-
 my $BigDouble = 1e40;

+print "# Infinity [ Inf = ", Inf (), ", BigDouble = $BigDouble ]\n";
+
 # E.g. netbsd-alpha core dumps on Inf arith without this.
 local $SIG{FPE} = sub { };

-ok(Inf() > $BigDouble);  # This passes in netbsd-alpha.
-ok(Inf() + $BigDouble > $BigDouble); # This coredumps in netbsd-alpha.
-ok(Inf() + $BigDouble == Inf());
-ok(Inf() - $BigDouble > $BigDouble);
-ok(Inf() - $BigDouble == Inf());
-ok(Inf() * $BigDouble > $BigDouble);
-ok(Inf() * $BigDouble == Inf());
-ok(Inf() / $BigDouble > $BigDouble);
-ok(Inf() / $BigDouble == Inf());
-
-ok(-Inf() < -$BigDouble);
-ok(-Inf() + $BigDouble < $BigDouble);
-ok(-Inf() + $BigDouble == -Inf());
-ok(-Inf() - $BigDouble < -$BigDouble);
-ok(-Inf() - $BigDouble == -Inf());
-ok(-Inf() * $BigDouble < -$BigDouble);
-ok(-Inf() * $BigDouble == -Inf());
-ok(-Inf() / $BigDouble < -$BigDouble);
-ok(-Inf() / $BigDouble == -Inf());
+cmp_ok ( Inf(),              ">",  $BigDouble,  "Inf >");   # This passes in netbsd-alpha.
+cmp_ok ( Inf() + $BigDouble, ">",  $BigDouble,  "Inf + >"); # This coredumps in netbsd-alpha.
+cmp_ok ( Inf() + $BigDouble, "==", Inf(),       "Inf + ==");
+cmp_ok ( Inf() - $BigDouble, ">",  $BigDouble,  "Inf - >");
+cmp_ok ( Inf() - $BigDouble, "==", Inf(),       "Inf - ==");
+cmp_ok ( Inf() * $BigDouble, ">",  $BigDouble,  "Inf * >");
+cmp_ok ( Inf() * $BigDouble, "==", Inf(),       "Inf * ==");
+cmp_ok ( Inf() / $BigDouble, ">",  $BigDouble,  "Inf / >");
+cmp_ok ( Inf() / $BigDouble, "==", Inf(),       "Inf / ==");
+
+cmp_ok (-Inf(),              "<",  -$BigDouble, "-Inf <");
+cmp_ok (-Inf() + $BigDouble, "<",   $BigDouble, "-Inf + <");
+cmp_ok (-Inf() + $BigDouble, "==", -Inf(),      "-Inf + ==");
+cmp_ok (-Inf() - $BigDouble, "<",  -$BigDouble, "-Inf - <");
+cmp_ok (-Inf() - $BigDouble, "==", -Inf(),      "-Inf - ==");
+cmp_ok (-Inf() * $BigDouble, "<",  -$BigDouble, "-Inf * <");
+cmp_ok (-Inf() * $BigDouble, "==", -Inf(),      "-Inf * ==");
+cmp_ok (-Inf() / $BigDouble, "<",  -$BigDouble, "-Inf / <");
+cmp_ok (-Inf() / $BigDouble, "==", -Inf(),      "-Inf / ==");

 print "# sinh/sech/cosh/csch/tanh/coth unto infinity\n";

@@ -350,19 +350,19 @@ ok(near(csch(-100), -7.4402e-44, 1e-3));
 ok(near(tanh(-100), -1));
 ok(near(coth(-100), -1));

-cmp_ok(sinh(1e5), '==', Inf());
-cmp_ok(sech(1e5), '==', 0);
-cmp_ok(cosh(1e5), '==', Inf());
-cmp_ok(csch(1e5), '==', 0);
-cmp_ok(tanh(1e5), '==', 1);
-cmp_ok(coth(1e5), '==', 1);
-
-cmp_ok(sinh(-1e5), '==', -Inf());
-cmp_ok(sech(-1e5), '==', 0);
-cmp_ok(cosh(-1e5), '==', Inf());
-cmp_ok(csch(-1e5), '==', 0);
-cmp_ok(tanh(-1e5), '==', -1);
-cmp_ok(coth(-1e5), '==', -1);
+cmp_ok(sinh( 1e5), '==', Inf(),  "sinh  1e5  Inf");
+cmp_ok(sech( 1e5), '==', 0,      "sech  1e5  0");
+cmp_ok(cosh( 1e5), '==', Inf(),  "cosh  1e5  Inf");
+cmp_ok(csch( 1e5), '==', 0,      "csch  1e5  0");
+cmp_ok(tanh( 1e5), '==', 1,      "tanh  1e5  1");
+cmp_ok(coth( 1e5), '==', 1,      "coth  1e5  1");
+
+cmp_ok(sinh(-1e5), '==', -Inf(), "sinh -1e5 -Inf");
+cmp_ok(sech(-1e5), '==', 0,      "sech -1e5  0");
+cmp_ok(cosh(-1e5), '==', Inf(),  "cosh -1e5  Inf");
+cmp_ok(csch(-1e5), '==', 0,      "csch -1e5  0");
+cmp_ok(tanh(-1e5), '==', -1,     "tanh -1e5  -1");
+cmp_ok(coth(-1e5), '==', -1,     "coth -1e5  -1");

 print "# great_circle_distance with small angles\n";

-->8---

-- 
H.Merijn Brand         Amsterdam Perl Mongers (http://amsterdam.pm.org/)
using & porting perl 5.6.2, 5.8.x, 5.10.x  on HP-UX 10.20, 11.00, 11.11,
& 11.23, SuSE 10.1 & 10.2, AIX 5.2, and Cygwin.       http://qa.perl.org
http://mirrors.develooper.com/hpux/            http://www.test-smoke.org
                        http://www.goldmark.org/jeff/stupid-disclaimers/

Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About