use strict;
use Win32;

BEGIN {
    Win32::CreateFile("8dot3test_canary_GetShortPathName $$");
    my $canary = Win32::GetShortPathName("8dot3test_canary_GetShortPathName $$");
    unlink("8dot3test_canary_GetShortPathName $$");
    if ( length $canary > 12 ) {
        print "1..0 # Skip: The system and/or current volume is not configured to support short names.\n";
        exit 0;
    }
}

use Test::More tests => 5;

my $path = "Long Path $$";
unlink($path);
END { unlink $path }

Win32::CreateFile($path);
ok(-f $path);

my $short = Win32::GetShortPathName($path);
like($short, qr/^\S{1,8}(\.\S{1,3})?$/);
ok(-f $short);

unlink($path);
ok(!-f $path);
ok(!defined Win32::GetShortPathName($path));
