Sidef
view release on metacpan or search on metacpan
t/01-number.t view on Meta::CPAN
#!perl -T
###############################################################################
use strict;
use warnings;
use Test::More tests => 188;
use Sidef;
sub re($) {
qr/^\Q$_[0]\E\z/;
}
###############################################################################
# general tests
my $o = 'Sidef::Types::Number::Number';
my $zero = $o->new( 0);
my $one = $o->new( 1);
my $mone = $o->new(-1);
{
my $x = $o->new(1234);
is("$x", "1234");
$x = $o->new("1234/1");
is("$x", "1234");
$x = $o->new("1234/2");
is("$x", "617");
#$x = $o->new("100/1.0");
#is("$x", "100");
#$x = $o->new("10.0/1.0");
#is("$x", "10");
#$x = $o->new("0.1/10");
#is("$x", "0.01");
#$x = $o->new("0.1/0.1");
#is("$x", "1");
#$x = $o->new("1e2/10");
#is("$x", "10");
#$x = $o->new("5/1e2");
#is("$x", "0.05");
#$x = $o->new("1e2/1e1");
#is("$x", "10");
$x = $o->new("8");
$x = $x->rsft($o->new("32"));
is("$x", "0");
$x = $o->new("112");
$x = $x->rsft($o->new("32"));
is("$x", "0");
$x = $o->new("640");
$x = $x->rsft($o->new("64"));
is("$x", "0");
$x = $o->new("1 / 3");
like($x->as_rat, re '1/3');
$x = $o->new("-1 / 3");
like($x->as_rat, re '-1/3');
( run in 2.984 seconds using v1.01-cache-2.11-cpan-5e09290becf )