summaryrefslogtreecommitdiffstats
path: root/contrib/perl5/t/op/sprintf.t
blob: 4d54d2c3172207eee97a08165d3e65e48a69851d (plain)
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
#!./perl

# $RCSfile: sprintf.t,v $$Revision: 4.1 $$Date: 92/08/07 18:28:27 $

BEGIN {
    chdir 't' if -d 't';
    unshift @INC, '../lib';
}   
use warnings;

print "1..4\n";

$SIG{__WARN__} = sub {
    if ($_[0] =~ /^Invalid conversion/) {
	$w++;
    } else {
	warn @_;
    }
};

$w = 0;
$x = sprintf("%3s %-4s%%foo %.0d%5d %#x%c%3.1f %b %x %X %#b %#x %#X","hi",123,0,456,0,ord('A'),3.0999,11,171,171,11,171,171);
if ($x eq ' hi 123 %foo   456 0A3.1 1011 ab AB 0b1011 0xab 0XAB' && $w == 0) {
    print "ok 1\n";
} else {
    print "not ok 1 '$x'\n";
}

for $i (2 .. 4) {
    $f = ('%6 .6s', '%6. 6s', '%6.6 s')[$i - 2];
    $w = 0;
    $x = sprintf($f, '');
    if ($x eq $f && $w == 1) {
	print "ok $i\n";
    } else {
	print "not ok $i '$x' '$f' '$w'\n";
    }
}
OpenPOWER on IntegriCloud