File: svcatpvf.t

package info (click to toggle)
perl 5.42.0-3
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 128,392 kB
  • sloc: perl: 534,963; ansic: 240,563; sh: 72,042; pascal: 6,934; xml: 2,428; yacc: 1,360; makefile: 1,197; cpp: 208; lisp: 1
file content (31 lines) | stat: -rw-r--r-- 1,014 bytes parent folder | download | duplicates (3)
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
use strict;
use warnings;

use Test::More tests => 6;

use XS::APItest;

my @cases = (
    [field     => '%2$d'],
    [precision => '%.*2$d'],
    [vector    => '%2$vd'],
    [width     => '%*2$d'],
);

for my $case (@cases) {
    my ($what, $format) = @$case;
    my $got = eval { test_sv_catpvf($format); 1 };
    my $exn = $got ? undef : $@;
    like($exn, qr/\b\QCannot yet reorder sv_vcatpvfn() arguments from va_list\E\b/,
         "explicit $what index forbidden in va_list arguments");
}

# these actually test newSVpvf() but it is the same underlying logic.
is(test_HvNAMEf(bless {}, "Whatever::You::Like"),
    "class='Whatever::You::Like'");
is(test_HvNAMEf_QUOTEDPREFIX(bless {}, "x" x 1000),
    'class="xxxxxxxxxxxxxxxxxxxxxxxxxx'.
    'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'.
    'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"..."xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'.
    'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'.
    'xxxxxxxxxxxxxxxxxxxxx"');