Line | |
---|
1 | #!perl -w
|
---|
2 |
|
---|
3 | # tests for Win32::GetLongPathName()
|
---|
4 |
|
---|
5 | $^O =~ /^MSWin/ or print("1..0 # not win32\n" ), exit;
|
---|
6 |
|
---|
7 | my @paths = qw(
|
---|
8 | /
|
---|
9 | //
|
---|
10 | .
|
---|
11 | ..
|
---|
12 | c:
|
---|
13 | c:/
|
---|
14 | c:./
|
---|
15 | c:/.
|
---|
16 | c:/..
|
---|
17 | c:./..
|
---|
18 | //./
|
---|
19 | //.
|
---|
20 | //..
|
---|
21 | //./..
|
---|
22 | );
|
---|
23 | push @paths, map { my $x = $_; $x =~ s,/,\\,g; $x } @paths;
|
---|
24 | push @paths, qw(
|
---|
25 | ../\
|
---|
26 | c:.\\../\
|
---|
27 | c:/\..//
|
---|
28 | c://.\/./\
|
---|
29 | \\.\\../\
|
---|
30 | //\..//
|
---|
31 | //.\/./\
|
---|
32 | );
|
---|
33 |
|
---|
34 | my $drive = $ENV{SystemDrive};
|
---|
35 | if ($drive) {
|
---|
36 | for (@paths) {
|
---|
37 | s/^c:/$drive/;
|
---|
38 | }
|
---|
39 | push @paths, $ENV{SystemRoot} if $ENV{SystemRoot};
|
---|
40 | }
|
---|
41 | my %expect;
|
---|
42 | @expect{@paths} = map { my $x = $_; $x =~ s,(.[/\\])[/\\]+,$1,g; $x } @paths;
|
---|
43 |
|
---|
44 | print "1.." . @paths . "\n";
|
---|
45 | my $i = 1;
|
---|
46 | for (@paths) {
|
---|
47 | my $got = Win32::GetLongPathName($_);
|
---|
48 | print "# '$_' => expect '$expect{$_}' => got '$got'\n";
|
---|
49 | print "not " unless $expect{$_} eq $got;
|
---|
50 | print "ok $i\n";
|
---|
51 | ++$i;
|
---|
52 | }
|
---|
Note:
See
TracBrowser
for help on using the repository browser.