1# -*- mode: perl; -*-
2
3# Test whether $Math::BigInt::upgrade breaks our neck
4
5use strict;
6use warnings;
7
8use Test::More tests => 5;
9
10use Math::BigInt upgrade => 'Math::BigRat';
11use Math::BigRat;
12
13my $rat = 'Math::BigRat';
14my($x, $y, $z);
15
16##############################################################################
17# bceil/bfloor
18
19$x = $rat->new('49/4');
20is($x->bfloor(), '12', 'floor(49/4)');
21
22$x = $rat->new('49/4');
23is($x->bceil(), '13', 'ceil(49/4)');
24
25##############################################################################
26# bsqrt
27
28$x = $rat->new('144');
29is($x->bsqrt(), '12', 'bsqrt(144)');
30
31$x = $rat->new('144/16');
32is($x->bsqrt(), '3', 'bsqrt(144/16)');
33
34$x = $rat->new('1/3');
35is($x->bsqrt(),
36   '1443375672974064411272871951254893639119/2500000000000000000000000000000000000000',
37   'bsqrt(1/3)');
38
39# all tests successful
40
411;
42