[WINESYNC] setupapi/tests: Add more tests for SetupInstallFilesFromInfSection().

Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 63cdb0b91a80d6e4bfd7528131157a3f20f2de6f by Zebediah Figura <zfigura@codeweavers.com>
This commit is contained in:
winesync 2023-09-14 21:45:05 +02:00 committed by Hermès Bélusca-Maïto
parent decb32ce9e
commit 82e53cbe9e
No known key found for this signature in database
GPG key ID: 3B2539C65E7B93D0
2 changed files with 27 additions and 4 deletions

View file

@ -1065,9 +1065,13 @@ static void test_install_files_queue(void)
{ {
static const char inf_data[] = "[Version]\n" static const char inf_data[] = "[Version]\n"
"Signature=\"$Chicago$\"\n" "Signature=\"$Chicago$\"\n"
"[DefaultInstall]\n" "[DefaultInstall]\n"
"CopyFiles=files_section\n" "CopyFiles=copy_section\n"
"[files_section]\n" "DelFiles=delete_section\n"
"RenFiles=rename_section\n"
"[copy_section]\n"
"one.txt\n" "one.txt\n"
"two.txt\n" "two.txt\n"
"three.txt\n" "three.txt\n"
@ -1076,11 +1080,19 @@ static void test_install_files_queue(void)
"six.txt\n" "six.txt\n"
"seven.txt\n" "seven.txt\n"
"eight.txt\n" "eight.txt\n"
"[delete_section]\n"
"nine.txt\n"
"[rename_section]\n"
"eleven.txt,ten.txt\n"
"[SourceDisksNames]\n" "[SourceDisksNames]\n"
"1=heis\n" "1=heis\n"
"2=duo,,,alpha\n" "2=duo,,,alpha\n"
"3=treis,treis.cab\n" "3=treis,treis.cab\n"
"4=tessares,tessares.cab,,alpha\n" "4=tessares,tessares.cab,,alpha\n"
"[SourceDisksFiles]\n" "[SourceDisksFiles]\n"
"one.txt=1\n" "one.txt=1\n"
"two.txt=1,beta\n" "two.txt=1,beta\n"
@ -1090,8 +1102,11 @@ static void test_install_files_queue(void)
"six.txt=3,beta\n" "six.txt=3,beta\n"
"seven.txt=4\n" "seven.txt=4\n"
"eight.txt=4,beta\n" "eight.txt=4,beta\n"
"[DestinationDirs]\n" "[DestinationDirs]\n"
"files_section=40000,dst\n"; "copy_section=40000,dst\n"
"delete_section=40000,dst\n"
"rename_section=40000,dst\n";
char path[MAX_PATH + 9]; char path[MAX_PATH + 9];
HSPFILEQ queue; HSPFILEQ queue;
@ -1116,12 +1131,17 @@ static void test_install_files_queue(void)
ret = SetupSetDirectoryIdA(hinf, 40000, CURR_DIR); ret = SetupSetDirectoryIdA(hinf, 40000, CURR_DIR);
ok(ret, "Failed to set directory ID, error %u.\n", GetLastError()); ok(ret, "Failed to set directory ID, error %u.\n", GetLastError());
ret = CreateDirectoryA("dst", NULL);
ok(ret, "Failed to create test directory, error %u.\n", GetLastError());
create_file("src/one.txt"); create_file("src/one.txt");
create_file("src/beta/two.txt"); create_file("src/beta/two.txt");
create_file("src/alpha/three.txt"); create_file("src/alpha/three.txt");
create_file("src/alpha/beta/four.txt"); create_file("src/alpha/beta/four.txt");
create_cab_file("src/treis.cab", "src\\beta\\five.txt\0six.txt\0"); create_cab_file("src/treis.cab", "src\\beta\\five.txt\0six.txt\0");
create_cab_file("src/alpha/tessares.cab", "seven.txt\0eight.txt\0"); create_cab_file("src/alpha/tessares.cab", "seven.txt\0eight.txt\0");
create_file("dst/nine.txt");
create_file("dst/ten.txt");
queue = SetupOpenFileQueue(); queue = SetupOpenFileQueue();
ok(queue != INVALID_HANDLE_VALUE, "Failed to open queue, error %#x.\n", GetLastError()); ok(queue != INVALID_HANDLE_VALUE, "Failed to open queue, error %#x.\n", GetLastError());
@ -1147,6 +1167,9 @@ static void test_install_files_queue(void)
ok(delete_file("dst/six.txt"), "Destination file should exist.\n"); ok(delete_file("dst/six.txt"), "Destination file should exist.\n");
ok(delete_file("dst/seven.txt"), "Destination file should exist.\n"); ok(delete_file("dst/seven.txt"), "Destination file should exist.\n");
ok(delete_file("dst/eight.txt"), "Destination file should exist.\n"); ok(delete_file("dst/eight.txt"), "Destination file should exist.\n");
todo_wine ok(!delete_file("dst/nine.txt"), "Destination file should not exist.\n");
todo_wine ok(!delete_file("dst/ten.txt"), "Destination file should not exist.\n");
todo_wine ok(delete_file("dst/eleven.txt"), "Destination file should exist.\n");
SetupTermDefaultQueueCallback(context); SetupTermDefaultQueueCallback(context);
ret = SetupCloseFileQueue(queue); ret = SetupCloseFileQueue(queue);

View file

@ -10,4 +10,4 @@ files:
dlls/setupapi/setupcab.c: dll/win32/setupapi/setupcab.c dlls/setupapi/setupcab.c: dll/win32/setupapi/setupcab.c
dlls/setupapi/stringtable.c: dll/win32/setupapi/stringtable_wine.c dlls/setupapi/stringtable.c: dll/win32/setupapi/stringtable_wine.c
tags: tags:
wine: ef77468b5e041d55db3821778665a2a406ed72ea wine: 63cdb0b91a80d6e4bfd7528131157a3f20f2de6f