Upgrade to Math::BigInt v1.65, Math::BigRat v0.10,
[p5sagit/p5-mst-13.2.git] / lib / Math / BigInt / t / sub_mbf.t
1 #!/usr/bin/perl -w
2
3 use Test;
4 use strict;
5
6 BEGIN
7   {
8   $| = 1;
9   # to locate the testing files
10   my $location = $0; $location =~ s/sub_mbf.t//i;
11   if ($ENV{PERL_CORE})
12     {
13     # testing with the core distribution
14     @INC = qw(../t/lib);
15     }
16   unshift @INC, '../lib';
17   if (-d 't')
18     {
19     chdir 't';
20     require File::Spec;
21     unshift @INC, File::Spec->catdir(File::Spec->updir, $location);
22     }
23   else
24     {
25     unshift @INC, $location;
26     }
27   print "# INC = @INC\n"; 
28   
29   plan tests => 1760
30     + 6;        # + our own tests
31   }
32
33 use Math::BigFloat::Subclass;
34
35 use vars qw ($class $try $x $y $f @args $ans $ans1 $ans1_str $setup $CL);
36 $class = "Math::BigFloat::Subclass";
37 $CL = "Math::BigInt::Calc";
38
39 require 'bigfltpm.inc'; # perform same tests as bigfltpm
40
41 ###############################################################################
42 # Now do custom tests for Subclass itself
43 my $ms = $class->new(23);
44 print "# Missing custom attribute \$ms->{_custom}" if !ok (1, $ms->{_custom});
45
46 # Check that subclass is a Math::BigFloat, but not a Math::Bigint
47 ok ($ms->isa('Math::BigFloat'),1);
48 ok ($ms->isa('Math::BigInt') || 0,0);
49
50 use Math::BigFloat;
51
52 my $bf = Math::BigFloat->new(23);               # same as other
53 $ms += $bf;
54 print "# Tried: \$ms += \$bf, got $ms" if !ok (46, $ms);
55 print "# Missing custom attribute \$ms->{_custom}" if !ok (1, $ms->{_custom});
56 print "# Wrong class: ref(\$ms) was ".ref($ms) if !ok ($class, ref($ms));