Piotr Caban : qcap: Add AVI Mux QueryInterface tests.

Alexandre Julliard julliard at winehq.org
Fri Nov 22 10:23:07 CST 2013


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

Author: Piotr Caban <piotr at codeweavers.com>
Date:   Fri Nov 22 12:17:05 2013 +0100

qcap: Add AVI Mux QueryInterface tests.

---

 dlls/qcap/tests/qcap.c |   41 +++++++++++++++++++++++++++++++++++++++++
 1 files changed, 41 insertions(+), 0 deletions(-)

diff --git a/dlls/qcap/tests/qcap.c b/dlls/qcap/tests/qcap.c
index a710c03..ecace3e 100644
--- a/dlls/qcap/tests/qcap.c
+++ b/dlls/qcap/tests/qcap.c
@@ -993,12 +993,53 @@ static void test_CaptureGraphBuilder_RenderStream(void)
     ICaptureGraphBuilder2_Release(cgb);
 }
 
+static void test_AviMux_QueryInterface(void)
+{
+    IUnknown *avimux, *unk;
+    HRESULT hr;
+
+    hr = CoCreateInstance(&CLSID_AviDest, NULL, CLSCTX_INPROC_SERVER, &IID_IUnknown, (void**)&avimux);
+    ok(hr == S_OK || broken(hr == REGDB_E_CLASSNOTREG),
+            "couldn't create AVI Mux filter, hr = %08x\n", hr);
+    if(hr != S_OK) {
+        win_skip("AVI Mux filter is not registered\n");
+        return;
+    }
+
+    hr = IUnknown_QueryInterface(avimux, &IID_IBaseFilter, (void**)&unk);
+    ok(hr == S_OK, "QueryInterface(IID_IBaseFilter) failed: %x\n", hr);
+    IUnknown_Release(unk);
+
+    hr = IUnknown_QueryInterface(avimux, &IID_IConfigAviMux, (void**)&unk);
+    ok(hr == S_OK, "QueryInterface(IID_IConfigAviMux) failed: %x\n", hr);
+    IUnknown_Release(unk);
+
+    hr = IUnknown_QueryInterface(avimux, &IID_IConfigInterleaving, (void**)&unk);
+    ok(hr == S_OK, "QueryInterface(IID_IConfigInterleaving) failed: %x\n", hr);
+    IUnknown_Release(unk);
+
+    hr = IUnknown_QueryInterface(avimux, &IID_IMediaSeeking, (void**)&unk);
+    ok(hr == S_OK, "QueryInterface(IID_IMediaSeeking) failed: %x\n", hr);
+    IUnknown_Release(unk);
+
+    hr = IUnknown_QueryInterface(avimux, &IID_IPersistMediaPropertyBag, (void**)&unk);
+    ok(hr == S_OK, "QueryInterface(IID_IPersistMediaPropertyBag) failed: %x\n", hr);
+    IUnknown_Release(unk);
+
+    hr = IUnknown_QueryInterface(avimux, &IID_ISpecifyPropertyPages, (void**)&unk);
+    ok(hr == S_OK, "QueryInterface(IID_ISpecifyPropertyPages) failed: %x\n", hr);
+    IUnknown_Release(unk);
+
+    IUnknown_Release(avimux);
+}
+
 START_TEST(qcap)
 {
     if (SUCCEEDED(CoInitialize(NULL)))
     {
         test_smart_tee_filter();
         test_CaptureGraphBuilder_RenderStream();
+        test_AviMux_QueryInterface();
         CoUninitialize();
     }
     else




More information about the wine-cvs mailing list