Hugh McMaster : reg/tests: Add tests for querying a key only containing subkeys.

Alexandre Julliard julliard at winehq.org
Tue Apr 20 16:27:45 CDT 2021


Module: wine
Branch: master
Commit: 8b0602023add5c530e4f257ebf07ebae8e4ffdba
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=8b0602023add5c530e4f257ebf07ebae8e4ffdba

Author: Hugh McMaster <hugh.mcmaster at outlook.com>
Date:   Tue Apr 20 23:21:57 2021 +1000

reg/tests: Add tests for querying a key only containing subkeys.

Signed-off-by: Hugh McMaster <hugh.mcmaster at outlook.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 programs/reg/tests/query.c | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/programs/reg/tests/query.c b/programs/reg/tests/query.c
index 7c8a1795b34..5c97554648e 100644
--- a/programs/reg/tests/query.c
+++ b/programs/reg/tests/query.c
@@ -148,6 +148,18 @@ static void test_query(void)
         "HKEY_CURRENT_USER\\" KEY_BASE "\\subkey\r\n"
         "    Wine    REG_SZ    Second instance\r\n\r\n";
 
+    const char *test8a = "\r\n"
+        "HKEY_CURRENT_USER\\" KEY_BASE "\\subkey1\r\n"
+        "HKEY_CURRENT_USER\\" KEY_BASE "\\subkey2\r\n"
+        "HKEY_CURRENT_USER\\" KEY_BASE "\\subkey3\r\n"
+        "HKEY_CURRENT_USER\\" KEY_BASE "\\subkey4\r\n";
+
+    const char *test8b = "\r\n"
+        "HKEY_CURRENT_USER\\" KEY_BASE "\\subkey1\r\n\r\n"
+        "HKEY_CURRENT_USER\\" KEY_BASE "\\subkey2\r\n\r\n"
+        "HKEY_CURRENT_USER\\" KEY_BASE "\\subkey3\r\n\r\n"
+        "HKEY_CURRENT_USER\\" KEY_BASE "\\subkey4\r\n\r\n";
+
     DWORD r, dword = 0x123;
     HKEY hkey, subkey;
     BYTE buf[512];
@@ -259,6 +271,24 @@ static void test_query(void)
        "got exit code %d, expected 0\n", r);
 
     delete_tree(HKEY_CURRENT_USER, KEY_BASE);
+
+    /* Subkeys only */
+    add_key(HKEY_CURRENT_USER, KEY_BASE, &hkey);
+    add_key(hkey, "subkey1", NULL);
+    add_key(hkey, "subkey2", NULL);
+    add_key(hkey, "subkey3", NULL);
+    add_key(hkey, "subkey4", NULL);
+    close_key(hkey);
+
+    read_reg_output("reg query HKCU\\" KEY_BASE, buf, sizeof(buf), &r);
+    ok(r == REG_EXIT_SUCCESS, "got exit code %d, expected 0\n", r);
+    compare_query(buf, test8a, FALSE, TODO_REG_COMPARE);
+
+    read_reg_output("reg query HKCU\\" KEY_BASE " /s", buf, sizeof(buf), &r);
+    ok(r == REG_EXIT_SUCCESS, "got exit code %d, expected 0\n", r);
+    compare_query(buf, test8b, FALSE, TODO_REG_COMPARE);
+
+    delete_tree(HKEY_CURRENT_USER, KEY_BASE);
 }
 
 START_TEST(query)




More information about the wine-cvs mailing list