summaryrefslogtreecommitdiff
path: root/t/op/sprintf.t
blob: 7556c80a4187cd2a4d8cd666a22a882183b71e9b (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
#!./perl

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

print "1..4\n";

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

$w = 0;
$x = sprintf("%3s %-4s%%foo %.0d%5d %#x%c%3.1f","hi",123,0,456,0,65,3.0999);
if ($x eq ' hi 123 %foo   456 0A3.1' && $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";
    }
}