Anatoly Lyutin : kernel32/tests: Add test for GetShortPathNameW.

Alexandre Julliard julliard at wine.codeweavers.com
Fri Jul 20 06:02:22 CDT 2007


Module: wine
Branch: master
Commit: 857ff080eb6ab302aa89c2c9f33c46674c128169
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=857ff080eb6ab302aa89c2c9f33c46674c128169

Author: Anatoly Lyutin <vostok at etersoft.ru>
Date:   Thu Jul 19 13:15:09 2007 +0400

kernel32/tests: Add test for GetShortPathNameW.

---

 dlls/kernel32/tests/path.c |   35 +++++++++++++++++++++++++++++++++++
 1 files changed, 35 insertions(+), 0 deletions(-)

diff --git a/dlls/kernel32/tests/path.c b/dlls/kernel32/tests/path.c
index 47ec23f..17c90ee 100644
--- a/dlls/kernel32/tests/path.c
+++ b/dlls/kernel32/tests/path.c
@@ -961,6 +961,40 @@ static void test_GetLongPathNameW(void)
     }
 }
 
+static void test_GetShortPathNameW(void)
+{
+    WCHAR test_path[] = { 'L', 'o', 'n', 'g', 'D', 'i', 'r', 'e', 'c', 't', 'o', 'r', 'y', 'N', 'a', 'm', 'e',  0 };
+    WCHAR path[MAX_PATH];
+    WCHAR short_path[MAX_PATH];
+    DWORD length;
+    HANDLE file;
+    int ret;
+    WCHAR name[] = { 't', 'e', 's', 't', 0 };
+    WCHAR backSlash[] = { '\\', 0 };
+
+    GetTempPathW( MAX_PATH, path );
+    lstrcatW( path, test_path );
+    lstrcatW( path, backSlash );
+    ret = CreateDirectoryW( path, NULL );
+    ok( ret, "Directory was not created. LastError = %d\n", GetLastError() );
+
+    /* Starting a main part of test */
+    length = GetShortPathNameW( path, short_path, 0 );
+    ok( length, "GetShortPathNameW returned 0.\n" );
+    ret = GetShortPathNameW( path, short_path, length );
+    ok( ret, "GetShortPathNameW returned 0.\n" );
+    lstrcatW( short_path, name );
+    file = CreateFileW( short_path, GENERIC_READ|GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL );
+    ok( file != INVALID_HANDLE_VALUE, "File was not created.\n" );
+
+    /* End test */
+    CloseHandle( file );
+    ret = DeleteFileW( short_path );
+    ok( ret, "Can not delete file.\n" );
+    ret = RemoveDirectoryW( path );
+    ok( ret, "Can not delete directory.\n" );
+}
+
 static void test_GetSystemDirectory(void)
 {
     CHAR    buffer[MAX_PATH + 4];
@@ -1136,6 +1170,7 @@ START_TEST(path)
     test_CleanupPathA(origdir,curdir);
     test_GetTempPath();
     test_GetLongPathNameW();
+    test_GetShortPathNameW();
     test_GetSystemDirectory();
     test_GetWindowsDirectory();
     if (pNeedCurrentDirectoryForExePathA)




More information about the wine-cvs mailing list