1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
# -*- mode: perl; -*-
# test that overloaded compare works when NaN are involved
use strict;
use warnings;
use Test::More tests => 26;
use Math::BigInt;
use Math::BigFloat;
compare('Math::BigInt');
compare('Math::BigFloat');
sub compare {
my $class = shift;
my $nan = $class->bnan();
my $one = $class->bone();
is($one, $one, "$class->bone() == $class->bone()");
is($one != $nan, 1, "$class->bone() != $class->bnan()");
is($nan != $one, 1, "$class->bnan() != $class->bone()");
is($nan != $nan, 1, "$class->bnan() != $class->bnan()");
is($nan == $one, '', "$class->bnan() == $class->bone()");
is($one == $nan, '', "$class->bone() == $class->bnan()");
is($nan == $nan, '', "$class->bnan() == $class->bnan()");
is($nan <= $one, '', "$class->bnan() <= $class->bone()");
is($one <= $nan, '', "$class->bone() <= $class->bnan()");
is($nan <= $nan, '', "$class->bnan() <= $class->bnan()");
is($nan >= $one, '', "$class->bnan() >= $class->bone()");
is($one >= $nan, '', "$class->bone() >= $class->bnan()");
is($nan >= $nan, '', "$class->bnan() >= $class->bnan()");
}
|