From: Nikolay Sivov <nsivov@codeweavers.com> Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com> --- dlls/msxml3/tests/domdoc.c | 21 +++++++++++++++++++++ dlls/msxml4/tests/domdoc.c | 21 +++++++++++++++++++++ dlls/msxml6/tests/domdoc.c | 21 +++++++++++++++++++++ 3 files changed, 63 insertions(+) diff --git a/dlls/msxml3/tests/domdoc.c b/dlls/msxml3/tests/domdoc.c index 2611e13c677..9c16436bc1c 100644 --- a/dlls/msxml3/tests/domdoc.c +++ b/dlls/msxml3/tests/domdoc.c @@ -14484,6 +14484,26 @@ static DWORD WINAPI new_thread(void *arg) return 0; } +static void test_get_parentNode(void) +{ + IXMLDOMDocument *doc; + IXMLDOMNode *node; + HRESULT hr; + + hr = CoCreateInstance(&CLSID_DOMDocument2, NULL, CLSCTX_INPROC_SERVER, &IID_IXMLDOMDocument, (void **)&doc); + ok(hr == S_OK, "Unexpected hr %#lx.\n", hr); + + hr = IXMLDOMDocument_get_parentNode(doc, NULL); + ok(hr == E_INVALIDARG, "Unexpected hr %#lx.\n", hr); + + node = (void *)0x1; + hr = IXMLDOMDocument_get_parentNode(doc, &node); + ok(hr == S_FALSE, "Unexpected hr %#lx.\n", hr); + ok(!node, "Unexpected node %p.\n", node); + + IXMLDOMDocument_Release(doc); +} + START_TEST(domdoc) { HRESULT hr; @@ -14575,6 +14595,7 @@ START_TEST(domdoc) test_xsltemplate(); test_xsltext(); test_max_element_depth_values(); + test_get_parentNode(); if (is_clsid_supported(&CLSID_MXNamespaceManager40, &IID_IMXNamespaceManager)) { diff --git a/dlls/msxml4/tests/domdoc.c b/dlls/msxml4/tests/domdoc.c index c0e528e19be..edcb82fa313 100644 --- a/dlls/msxml4/tests/domdoc.c +++ b/dlls/msxml4/tests/domdoc.c @@ -355,6 +355,26 @@ static void test_get_ownerDocument(void) IXMLDOMDocument2_Release(doc); } +static void test_get_parentNode(void) +{ + IXMLDOMDocument *doc; + IXMLDOMNode *node; + HRESULT hr; + + hr = CoCreateInstance(&CLSID_DOMDocument40, NULL, CLSCTX_INPROC_SERVER, &IID_IXMLDOMDocument, (void **)&doc); + ok(hr == S_OK, "Unexpected hr %#lx.\n", hr); + + hr = IXMLDOMDocument_get_parentNode(doc, NULL); + ok(hr == E_INVALIDARG, "Unexpected hr %#lx.\n", hr); + + node = (void *)0x1; + hr = IXMLDOMDocument_get_parentNode(doc, &node); + ok(hr == S_FALSE, "Unexpected hr %#lx.\n", hr); + ok(!node, "Unexpected node %p.\n", node); + + IXMLDOMDocument_Release(doc); +} + START_TEST(domdoc) { HRESULT hr; @@ -374,6 +394,7 @@ START_TEST(domdoc) test_namespaces_as_attributes(); test_create_attribute(); test_get_ownerDocument(); + test_get_parentNode(); CoUninitialize(); } diff --git a/dlls/msxml6/tests/domdoc.c b/dlls/msxml6/tests/domdoc.c index cbc7273d689..2bf7acb276d 100644 --- a/dlls/msxml6/tests/domdoc.c +++ b/dlls/msxml6/tests/domdoc.c @@ -433,6 +433,26 @@ static void test_get_ownerDocument(void) IXMLDOMDocument2_Release(doc); } +static void test_get_parentNode(void) +{ + IXMLDOMDocument *doc; + IXMLDOMNode *node; + HRESULT hr; + + hr = CoCreateInstance(&CLSID_DOMDocument60, NULL, CLSCTX_INPROC_SERVER, &IID_IXMLDOMDocument, (void **)&doc); + ok(hr == S_OK, "Unexpected hr %#lx.\n", hr); + + hr = IXMLDOMDocument_get_parentNode(doc, NULL); + ok(hr == E_INVALIDARG, "Unexpected hr %#lx.\n", hr); + + node = (void *)0x1; + hr = IXMLDOMDocument_get_parentNode(doc, &node); + ok(hr == S_FALSE, "Unexpected hr %#lx.\n", hr); + ok(!node, "Unexpected node %p.\n", node); + + IXMLDOMDocument_Release(doc); +} + START_TEST(domdoc) { HRESULT hr; @@ -453,6 +473,7 @@ START_TEST(domdoc) test_create_attribute(); test_leading_spaces(); test_get_ownerDocument(); + test_get_parentNode(); CoUninitialize(); } -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/10188