Nikolay Sivov : msxml3: Basic refcount test for IMXNamespacePrefixes.

Alexandre Julliard julliard at winehq.org
Mon Jun 25 13:24:12 CDT 2012


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

Author: Nikolay Sivov <nsivov at codeweavers.com>
Date:   Sat Jun 23 15:03:42 2012 +0400

msxml3: Basic refcount test for IMXNamespacePrefixes.

---

 dlls/msxml3/tests/domdoc.c |   24 ++++++++++++++++++++++++
 1 files changed, 24 insertions(+), 0 deletions(-)

diff --git a/dlls/msxml3/tests/domdoc.c b/dlls/msxml3/tests/domdoc.c
index 0c9d65a..4bbbe56 100644
--- a/dlls/msxml3/tests/domdoc.c
+++ b/dlls/msxml3/tests/domdoc.c
@@ -10484,8 +10484,10 @@ static void test_domobj_dispex(IUnknown *obj)
 static void test_mxnamespacemanager(void)
 {
     static const char xmluriA[] = "http://www.w3.org/XML/1998/namespace";
+    IMXNamespacePrefixes *prefixes;
     IVBMXNamespaceManager *mgr2;
     IMXNamespaceManager *nsmgr;
+    IUnknown *unk1, *unk2;
     WCHAR buffW[250];
     IDispatch *disp;
     IUnknown *unk;
@@ -10503,6 +10505,28 @@ static void test_mxnamespacemanager(void)
 
     hr = IMXNamespaceManager_QueryInterface(nsmgr, &IID_IVBMXNamespaceManager, (void**)&mgr2);
     EXPECT_HR(hr, S_OK);
+
+    EXPECT_REF(nsmgr, 2);
+    EXPECT_REF(mgr2, 2);
+    prefixes = NULL;
+    hr = IVBMXNamespaceManager_getDeclaredPrefixes(mgr2, &prefixes);
+    if (hr == S_OK)
+    {
+        ok(prefixes != NULL, "got %p\n", prefixes);
+        EXPECT_REF(nsmgr, 2);
+        EXPECT_REF(mgr2, 2);
+        EXPECT_REF(prefixes, 1);
+
+        IVBMXNamespaceManager_QueryInterface(mgr2, &IID_IUnknown, (void**)&unk1);
+        IMXNamespacePrefixes_QueryInterface(prefixes, &IID_IUnknown, (void**)&unk2);
+
+        EXPECT_REF(mgr2, 3);
+        EXPECT_REF(prefixes, 2);
+
+        IUnknown_Release(unk1);
+        IUnknown_Release(unk2);
+        IMXNamespacePrefixes_Release(prefixes);
+    }
     IVBMXNamespaceManager_Release(mgr2);
 
     hr = IMXNamespaceManager_declarePrefix(nsmgr, NULL, NULL);




More information about the wine-cvs mailing list