File: lln.t

package info (click to toggle)
perl 5.32.1-4%2Bdeb11u3
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 113,408 kB
  • sloc: ansic: 641,443; perl: 491,650; sh: 70,967; pascal: 8,354; cpp: 4,103; xml: 2,428; makefile: 2,237; yacc: 1,173; lisp: 1
file content (37 lines) | stat: -rw-r--r-- 1,208 bytes parent folder | download | duplicates (6)
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
#!./perl

use strict;
use warnings;

use Test::More tests => 19;
use Scalar::Util qw(looks_like_number);

foreach my $num (qw(1 -1 +1 1.0 +1.0 -1.0 -1.0e-12)) {
  ok(looks_like_number($num), "'$num'");
}

is(!!looks_like_number("Inf"),      $] >= 5.006001, 'Inf');
is(!!looks_like_number("Infinity"), $] >= 5.008,    'Infinity');
is(!!looks_like_number("NaN"),      $] >= 5.008,    'NaN');
is(!!looks_like_number("foo"),      '',             'foo');
is(!!looks_like_number(undef),      '',             'undef');
is(!!looks_like_number({}),         '',             'HASH Ref');
is(!!looks_like_number([]),         '',             'ARRAY Ref');

use Math::BigInt;
my $bi = Math::BigInt->new('1234567890');
is(!!looks_like_number($bi),        1,              'Math::BigInt');
is(!!looks_like_number("$bi"),      1,              'Stringified Math::BigInt');

{ package Foo;
sub TIEHASH { bless {} }
sub FETCH { $_[1] }
}
my %foo;
tie %foo, 'Foo';
is(!!looks_like_number($foo{'abc'}),  '',           'Tied');
is(!!looks_like_number($foo{'123'}),  1,            'Tied');

is(!!looks_like_number("\x{1815}"),   '',           'MONGOLIAN DIGIT FIVE');

# We should copy some of perl core tests like t/base/num.t here