Zebediah Figura : quartz/tests: Move the test for filter mapper aggregation to filtergraph.c.

Alexandre Julliard julliard at winehq.org
Wed May 20 15:35:38 CDT 2020


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

Author: Zebediah Figura <z.figura12 at gmail.com>
Date:   Wed May 20 00:10:38 2020 -0500

quartz/tests: Move the test for filter mapper aggregation to filtergraph.c.

Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/quartz/tests/filtergraph.c  | 25 +++++++++++++++++
 dlls/quartz/tests/filtermapper.c | 58 ----------------------------------------
 2 files changed, 25 insertions(+), 58 deletions(-)

diff --git a/dlls/quartz/tests/filtergraph.c b/dlls/quartz/tests/filtergraph.c
index e926b109ec..68b4863442 100644
--- a/dlls/quartz/tests/filtergraph.c
+++ b/dlls/quartz/tests/filtergraph.c
@@ -2496,6 +2496,7 @@ static IUnknown test_outer = {&outer_vtbl};
 static void test_aggregation(void)
 {
     IFilterGraph2 *graph, *graph2;
+    IFilterMapper2 *mapper;
     IUnknown *unk, *unk2;
     HRESULT hr;
     ULONG ref;
@@ -2550,6 +2551,30 @@ static void test_aggregation(void)
     ref = IUnknown_Release(unk);
     ok(!ref, "Got unexpected refcount %d.\n", ref);
     ok(outer_ref == 1, "Got unexpected refcount %d.\n", outer_ref);
+
+    /* Test the aggregated filter mapper. */
+
+    graph = create_graph();
+
+    ref = get_refcount(graph);
+    ok(ref == 1, "Got unexpected refcount %d.\n", ref);
+
+    hr = IFilterGraph2_QueryInterface(graph, &IID_IFilterMapper2, (void **)&mapper);
+    ok(hr == S_OK, "Got hr %#x.\n", hr);
+
+    ref = get_refcount(graph);
+    ok(ref == 2, "Got unexpected refcount %d.\n", ref);
+    ref = get_refcount(mapper);
+    ok(ref == 2, "Got unexpected refcount %d.\n", ref);
+
+    hr = IFilterMapper2_QueryInterface(mapper, &IID_IFilterGraph2, (void **)&graph2);
+    ok(hr == S_OK, "Got hr %#x.\n", hr);
+    ok(graph2 == graph, "Got unexpected IFilterGraph2 %p.\n", graph2);
+    IFilterGraph2_Release(graph2);
+
+    IFilterMapper2_Release(mapper);
+    ref = IFilterGraph2_Release(graph);
+    ok(!ref, "Got unexpected refcount %d.\n", ref);
 }
 
 /* Test how methods from "control" interfaces (IBasicAudio, IBasicVideo,
diff --git a/dlls/quartz/tests/filtermapper.c b/dlls/quartz/tests/filtermapper.c
index b9123ce525..f1a942b1d2 100644
--- a/dlls/quartz/tests/filtermapper.c
+++ b/dlls/quartz/tests/filtermapper.c
@@ -368,63 +368,6 @@ static void test_legacy_filter_registration(void)
     IFilterMapper2_Release(mapper2);
 }
 
-static ULONG getRefcount(IUnknown *iface)
-{
-    IUnknown_AddRef(iface);
-    return IUnknown_Release(iface);
-}
-
-static void test_ifiltermapper_from_filtergraph(void)
-{
-    IFilterGraph2* pgraph2 = NULL;
-    IFilterMapper2 *pMapper2 = NULL;
-    IFilterGraph *filtergraph = NULL;
-    HRESULT hr;
-    ULONG refcount;
-
-    hr = CoCreateInstance(&CLSID_FilterGraph, NULL, CLSCTX_INPROC_SERVER, &IID_IFilterGraph2, (LPVOID*)&pgraph2);
-    ok(hr == S_OK, "CoCreateInstance failed with %08x\n", hr);
-    if (!pgraph2) goto out;
-
-    hr = IFilterGraph2_QueryInterface(pgraph2, &IID_IFilterMapper2, (LPVOID*)&pMapper2);
-    ok(hr == S_OK, "IFilterGraph2_QueryInterface failed with %08x\n", hr);
-    if (!pMapper2) goto out;
-
-    refcount = getRefcount((IUnknown*)pgraph2);
-    ok(refcount == 2, "unexpected reference count: %u\n", refcount);
-    refcount = getRefcount((IUnknown*)pMapper2);
-    ok(refcount == 2, "unexpected reference count: %u\n", refcount);
-
-    IFilterMapper2_AddRef(pMapper2);
-    refcount = getRefcount((IUnknown*)pgraph2);
-    ok(refcount == 3, "unexpected reference count: %u\n", refcount);
-    refcount = getRefcount((IUnknown*)pMapper2);
-    ok(refcount == 3, "unexpected reference count: %u\n", refcount);
-    IFilterMapper2_Release(pMapper2);
-
-    hr = IFilterMapper2_QueryInterface(pMapper2, &IID_IFilterGraph, (LPVOID*)&filtergraph);
-    ok(hr == S_OK, "IFilterMapper2_QueryInterface failed with %08x\n", hr);
-    if (!filtergraph) goto out;
-
-    IFilterMapper2_Release(pMapper2);
-    pMapper2 = NULL;
-    IFilterGraph_Release(filtergraph);
-    filtergraph = NULL;
-
-    hr = CoCreateInstance(&CLSID_FilterMapper2, NULL, CLSCTX_INPROC_SERVER, &IID_IFilterMapper2, (LPVOID*)&pMapper2);
-    ok(hr == S_OK, "CoCreateInstance failed with %08x\n", hr);
-    if (!pMapper2) goto out;
-
-    hr = IFilterMapper2_QueryInterface(pMapper2, &IID_IFilterGraph, (LPVOID*)&filtergraph);
-    ok(hr == E_NOINTERFACE, "IFilterMapper2_QueryInterface unexpected result: %08x\n", hr);
-
-    out:
-
-    if (pMapper2) IFilterMapper2_Release(pMapper2);
-    if (filtergraph) IFilterGraph_Release(filtergraph);
-    if (pgraph2) IFilterGraph2_Release(pgraph2);
-}
-
 static void test_register_filter_with_null_clsMinorType(void)
 {
     static WCHAR wszPinName[] = L"Pin";
@@ -721,7 +664,6 @@ START_TEST(filtermapper)
     test_interfaces();
     test_fm2_enummatchingfilters();
     test_legacy_filter_registration();
-    test_ifiltermapper_from_filtergraph();
     test_register_filter_with_null_clsMinorType();
     test_parse_filter_data();
     test_aggregation();




More information about the wine-cvs mailing list