970{
974 int itemCount_justFiles;
975 int itemCount_justDrives;
976 int itemCount_allFiles;
977 int itemCount_allDirs;
981 char driveletter;
982 const char *wildcard = "*";
985
987
990 ok(
ret,
"Failed to set current directory.\n");
991
993 ok(
ret,
"Failed to create test directory.\n");
994
998
999
1000
1001
1002
1003
1007
1008
1009
1010
1015 {
1016 wildcard = "*.*";
1019 }
1021
1022
1024 ok (itemCount > 0,
"SendMessage(LB_DIR) did NOT fill the listbox!\n");
1025 itemCount_allFiles = itemCount;
1026 ok(
res + 1 == itemCount,
1027 "SendMessage(LB_DIR, 0, *) returned incorrect index (expected %d got %d)!\n",
1028 itemCount - 1,
res);
1029
1030
1035
1036
1038 ok (itemCount == 0,
"SendMessage(LB_DIR) DID fill the listbox!\n");
1039
1040
1041
1042
1043
1047 ok (
res >= 0,
"SendMessage(LB_DIR, 0, w*.c) failed - 0x%08lx\n",
GetLastError());
1048
1049
1051 "expected no change to pathBuffer, got %s\n",
pathBuffer);
1052
1053
1055 ok (itemCount > 0,
"SendMessage(LB_DIR) did NOT fill the listbox!\n");
1056 itemCount_justFiles = itemCount;
1057 ok(
res + 1 == itemCount,
1058 "SendMessage(LB_DIR, 0, w*.c) returned incorrect index (expected %d got %d)!\n",
1059 itemCount - 1,
res);
1060
1061
1062 for (
i = 0;
i < itemCount;
i++) {
1067 (*(
p-1) ==
'c' || *(
p-1) ==
'C') &&
1068 (*(
p-2) ==
'.')),
"Element %d (%s) does not fit requested w*.c\n",
i,
pathBuffer);
1069 }
1070
1071
1075 ok (
res > 0,
"SendMessage(LB_DIR, DDL_DIRECTORY, *) failed - 0x%08lx\n",
GetLastError());
1076
1077
1078
1079
1081 itemCount_allDirs = itemCount - itemCount_allFiles;
1082 ok (itemCount > itemCount_allFiles,
1083 "SendMessage(LB_DIR, DDL_DIRECTORY, *) filled with %d entries, expected > %d\n",
1084 itemCount, itemCount_allFiles);
1085 ok(
res + 1 == itemCount,
1086 "SendMessage(LB_DIR, DDL_DIRECTORY, *) returned incorrect index (expected %d got %d)!\n",
1087 itemCount - 1,
res);
1088
1089
1093 ok (
res == -1,
"SendMessage(LB_DIR, DDL_DIRECTORY, %s) returned %d, expected -1\n",
BAD_EXTENSION,
res);
1094
1095
1097 ok (itemCount == 0,
"SendMessage(LB_DIR) DID fill the listbox!\n");
1098
1099
1100
1104 ok (
res >= 0,
"SendMessage(LB_DIR, DDL_DIRECTORY, w*.c) failed - 0x%08lx\n",
GetLastError());
1105
1106
1107
1108
1110 ok (itemCount == itemCount_justFiles,
1111 "SendMessage(LB_DIR, DDL_DIRECTORY, w*.c) filled with %d entries, expected %d\n",
1112 itemCount, itemCount_justFiles);
1113 ok(
res + 1 == itemCount,
1114 "SendMessage(LB_DIR, DDL_DIRECTORY, w*.c) returned incorrect index (expected %d got %d)!\n",
1115 itemCount - 1,
res);
1116
1117
1118 for (
i = 0;
i < itemCount;
i++) {
1124 (*(
p-1) ==
'c' || *(
p-1) ==
'C') &&
1125 (*(
p-2) ==
'.')),
"Element %d (%s) does not fit requested w*.c\n",
i,
pathBuffer);
1126 }
1127
1128
1129
1133 ok (
res >= 0,
"SendMessage(LB_DIR, DDL_DRIVES|DDL_EXCLUSIVE, *) failed - 0x%08lx\n",
GetLastError());
1134
1135
1136
1137
1138
1139
1142 "SendMessage(LB_DIR, DDL_DRIVES|DDL_EXCLUSIVE, *) filled with %d entries, expected at least %d\n",
1143 itemCount, 1);
1144 itemCount_justDrives = itemCount;
1145 ok(
res + 1 == itemCount,
"SendMessage(LB_DIR, DDL_DRIVES|DDL_EXCLUSIVE, *) returned incorrect index!\n");
1146
1147
1148 for (
i = 0;
i < itemCount;
i++) {
1150 driveletter = '\0';
1154 ok( driveletter >=
'a' && driveletter <=
'z',
"Drive letter not in range a..z, got ascii %d\n", driveletter);
1155 if (!(driveletter >= 'a' && driveletter <= 'z')) {
1156
1158 itemCount_justDrives--;
1159 }
1160 }
1161
1162
1166 ok (
res == itemCount_justDrives -1,
"SendMessage(LB_DIR, DDL_DRIVES|DDL_EXCLUSIVE, %s) returned %d, expected %d\n",
1168
1170 ok (itemCount == itemCount_justDrives,
"SendMessage(LB_DIR) returned %d expected %d\n",
1171 itemCount, itemCount_justDrives);
1172
1173 trace(
"Files with w*.c: %d Mapped drives: %d Directories: 1\n",
1174 itemCount_justFiles, itemCount_justDrives);
1175
1176
1180 ok (
res > 0,
"SendMessage(LB_DIR, DDL_DRIVES, *) failed - 0x%08lx\n",
GetLastError());
1181
1182
1183
1184
1185
1186
1188 ok (itemCount == itemCount_justDrives + itemCount_allFiles,
1189 "SendMessage(LB_DIR, DDL_DRIVES, *) filled with %d entries, expected %d\n",
1190 itemCount, itemCount_justDrives + itemCount_allFiles);
1191 ok(
res + 1 == itemCount,
"SendMessage(LB_DIR, DDL_DRIVES, *) returned incorrect index!\n");
1192
1193
1197 ok (
res == itemCount_justDrives -1,
"SendMessage(LB_DIR, DDL_DRIVES, %s) returned %d, expected %d\n",
1199
1201 ok (itemCount ==
res + 1,
"SendMessage(LB_DIR) returned %d expected %d\n", itemCount,
res + 1);
1202
1203
1204
1208 ok (
res > 0,
"SendMessage(LB_DIR, DDL_DRIVES, w*.c) failed - 0x%08lx\n",
GetLastError());
1209
1210
1211
1212
1213
1214
1216 ok (itemCount == itemCount_justDrives + itemCount_justFiles,
1217 "SendMessage(LB_DIR, DDL_DRIVES, w*.c) filled with %d entries, expected %d\n",
1218 itemCount, itemCount_justDrives + itemCount_justFiles);
1219 ok(
res + 1 == itemCount,
"SendMessage(LB_DIR, DDL_DRIVES, w*.c) returned incorrect index!\n");
1220
1221
1222 for (
i = 0;
i < itemCount;
i++) {
1224 driveletter = '\0';
1229 ok( driveletter >=
'a' && driveletter <=
'z',
"Drive letter not in range a..z, got ascii %d\n", driveletter);
1230 } else {
1233 (*(
p-1) ==
'c' || *(
p-1) ==
'C') &&
1234 (*(
p-2) ==
'.')),
"Element %d (%s) does not fit requested w*.c\n",
i,
pathBuffer);
1235 }
1236 }
1237
1238
1239
1243 ok (
res > 0,
"SendMessage(LB_DIR, DDL_DIRECTORY|DDL_DRIVES, *) failed - 0x%08lx\n",
GetLastError());
1244
1245
1246
1247
1249 ok (itemCount == itemCount_allFiles + itemCount_justDrives + itemCount_allDirs,
1250 "SendMessage(LB_DIR, DDL_DIRECTORY|DDL_DRIVES) filled with %d entries, expected %d\n",
1251 itemCount, itemCount_allFiles + itemCount_justDrives + itemCount_allDirs);
1252 ok(
res + 1 == itemCount,
"SendMessage(LB_DIR, DDL_DIRECTORY|DDL_DRIVES, w*.c) returned incorrect index!\n");
1253
1254
1255
1256
1257
1258 for (
i = 0;
i < itemCount;
i++) {
1260 driveletter = '\0';
1263 ok( driveletter >=
'a' && driveletter <=
'z',
"Drive letter not in range a..z, got ascii %d\n", driveletter);
1264 }
1265 }
1266
1267
1271 ok (
res == itemCount_justDrives -1,
"SendMessage(LB_DIR, DDL_DIRECTORY|DDL_DRIVES, %s) returned %d, expected %d\n",
1273
1275 ok (itemCount ==
res + 1,
"SendMessage(LB_DIR) returned %d expected %d\n", itemCount,
res + 1);
1276
1277
1278
1279
1283 ok (
res > 0,
"SendMessage(LB_DIR, DDL_DIRECTORY|DDL_DRIVES, w*.c) failed - 0x%08lx\n",
GetLastError());
1284
1285
1286
1287
1289 ok (itemCount == itemCount_justFiles + itemCount_justDrives,
1290 "SendMessage(LB_DIR, DDL_DIRECTORY|DDL_DRIVES) filled with %d entries, expected %d\n",
1291 itemCount, itemCount_justFiles + itemCount_justDrives);
1292 ok(
res + 1 == itemCount,
"SendMessage(LB_DIR, DDL_DIRECTORY|DDL_DRIVES, w*.c) returned incorrect index!\n");
1293
1294
1295
1296
1297
1298 for (
i = 0;
i < itemCount;
i++) {
1300 driveletter = '\0';
1304 ok( driveletter >=
'a' && driveletter <=
'z',
"Drive letter not in range a..z, got ascii %d\n", driveletter);
1305 } else {
1308 (*(
p-1) ==
'c' || *(
p-1) ==
'C') &&
1309 (*(
p-2) ==
'.')),
"Element %d (%s) does not fit requested w*.c\n",
i,
pathBuffer);
1310 }
1311 }
1312
1313
1317 ok (
res != -1,
"SendMessage(LB_DIR, DDL_DIRECTORY|DDL_EXCLUSIVE, *) failed err %lu\n",
GetLastError());
1318
1320 ok (itemCount == itemCount_allDirs,
1321 "SendMessage(LB_DIR, DDL_DIRECTORY|DDL_EXCLUSIVE) filled with %d entries, expected %d\n",
1322 itemCount, itemCount_allDirs);
1323 ok(
res + 1 == itemCount,
"SendMessage(LB_DIR, DDL_DIRECTORY|DDL_EXCLUSIVE, *) returned incorrect index!\n");
1324
1325 if (itemCount)
1326 {
1330 }
1331
1332
1336 ok (
res == -1,
"SendMessage(LB_DIR, DDL_DIRECTORY|DDL_EXCLUSIVE, %s) returned %d, expected %d\n",
1338
1340 ok (itemCount ==
res + 1,
"SendMessage(LB_DIR) returned %d expected %d\n", itemCount,
res + 1);
1341
1342
1343
1347 ok (
res ==
LB_ERR,
"SendMessage(LB_DIR, DDL_DIRECTORY|DDL_EXCLUSIVE, w*.c) returned %d expected %d\n",
res,
LB_ERR);
1348
1349
1352 "SendMessage(LB_DIR, DDL_DIRECTORY|DDL_EXCLUSIVE) filled with %d entries, expected %d\n",
1353 itemCount, 0);
1354
1355
1359 ok (
res > 0,
"SendMessage(LB_DIR, DDL_DIRECTORY|DDL_DRIVES|DDL_EXCLUSIVE, w*.c,) failed - 0x%08lx\n",
GetLastError());
1360
1361
1363 ok (itemCount == itemCount_justDrives + itemCount_allDirs,
1364 "SendMessage(LB_DIR, DDL_DIRECTORY|DDL_DRIVES|DDL_EXCLUSIVE) filled with %d entries, expected %d\n",
1365 itemCount, itemCount_justDrives + itemCount_allDirs);
1366 ok(
res + 1 == itemCount,
"SendMessage(LB_DIR, DDL_DIRECTORY|DDL_DRIVES|DDL_EXCLUSIVE, w*.c) returned incorrect index!\n");
1367
1368 for (
i = 0;
i < itemCount;
i++) {
1370 driveletter = '\0';
1373 ok( driveletter >=
'a' && driveletter <=
'z',
"Drive letter not in range a..z, got ascii %d\n", driveletter);
1374 } else {
1376 "Element %d (%s) does not fit expected [...]\n",
i,
pathBuffer);
1377 }
1378 }
1379
1380
1384 ok (
res == itemCount_justDrives -1,
"SendMessage(LB_DIR, DDL_DIRECTORY|DDL_DRIVES|DDL_EXCLUSIVE, %s) returned %d, expected %d\n",
1386
1388 ok (itemCount ==
res + 1,
"SendMessage(LB_DIR) returned %d expected %d\n", itemCount,
res + 1);
1389
1390
1394 ok (
res >= 0,
"SendMessage(LB_DIR, DDL_DIRECTORY|DDL_DRIVES|DDL_EXCLUSIVE, w*.c,) failed - 0x%08lx\n",
GetLastError());
1395
1396
1398 ok (itemCount == itemCount_justDrives,
1399 "SendMessage(LB_DIR, DDL_DIRECTORY|DDL_DRIVES|DDL_EXCLUSIVE) filled with %d entries, expected %d\n",
1400 itemCount, itemCount_justDrives);
1401 ok(
res + 1 == itemCount,
"SendMessage(LB_DIR, DDL_DIRECTORY|DDL_DRIVES|DDL_EXCLUSIVE, w*.c) returned incorrect index!\n");
1402
1403 for (
i = 0;
i < itemCount;
i++) {
1405 driveletter = '\0';
1408 ok( driveletter >=
'a' && driveletter <=
'z',
"Drive letter not in range a..z, got ascii %d\n", driveletter);
1409 }
1411
1414
1416}
BOOL WINAPI RemoveDirectoryA(IN LPCSTR lpPathName)
BOOL WINAPI CreateDirectoryA(IN LPCSTR lpPathName, IN LPSECURITY_ATTRIBUTES lpSecurityAttributes)
BOOL WINAPI SetCurrentDirectoryA(IN LPCSTR lpPathName)
DWORD WINAPI GetTempPathA(IN DWORD nBufferLength, OUT LPSTR lpBuffer)