https://git.reactos.org/?p=reactos.git;a=commitdiff;h=ebaf247c9e9910ec44d67…
commit ebaf247c9e9910ec44d674bb57aecc3efb885256
Author: Amine Khaldi <amine.khaldi(a)reactos.org>
AuthorDate: Sat Dec 7 13:11:29 2019 +0100
Commit: Amine Khaldi <amine.khaldi(a)reactos.org>
CommitDate: Sat Dec 7 13:11:29 2019 +0100
[WMVCORE_WINETEST] Sync with Wine Staging 4.18. CORE-16441
---
modules/rostests/winetests/wmvcore/wmvcore.c | 110 ++++++++++++++++++++++++++-
1 file changed, 109 insertions(+), 1 deletion(-)
diff --git a/modules/rostests/winetests/wmvcore/wmvcore.c
b/modules/rostests/winetests/wmvcore/wmvcore.c
index b11a5bf7dea..8af34e22b6b 100644
--- a/modules/rostests/winetests/wmvcore/wmvcore.c
+++ b/modules/rostests/winetests/wmvcore/wmvcore.c
@@ -1,5 +1,6 @@
/*
* Copyright 2017 Alistair Leslie-Hughes
+ * Copyright 2019 Vijay Kiran Kamuju
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@@ -18,7 +19,7 @@
#define COBJMACROS
#define WIN32_LEAN_AND_MEAN
#include "initguid.h"
-#include "wmsdkidl.h"
+#include "wmsdk.h"
#include "wine/test.h"
@@ -201,6 +202,91 @@ static void test_wmreader_interfaces(void)
IWMReader_Release(reader);
}
+static void test_wmsyncreader_interfaces(void)
+{
+ HRESULT hr;
+ IWMSyncReader *reader;
+ IWMHeaderInfo *header;
+ IWMHeaderInfo2 *header2;
+ IWMHeaderInfo3 *header3;
+ IWMProfile *profile;
+ IWMProfile2 *profile2;
+ IWMProfile3 *profile3;
+ IWMPacketSize *packet;
+ IWMPacketSize2 *packet2;
+ IWMReaderTimecode *timecode;
+ IWMReaderPlaylistBurn *playlist;
+ IWMLanguageList *langlist;
+
+ hr = WMCreateSyncReader( NULL, 0, &reader );
+ ok(hr == S_OK, "WMCreateSyncReader failed 0x%08x\n", hr);
+ if(FAILED(hr))
+ {
+ win_skip("Failed to create IWMSyncReader\n");
+ return;
+ }
+
+ hr = IWMSyncReader_QueryInterface(reader, &IID_IWMHeaderInfo, (void
**)&header);
+ todo_wine ok(hr == S_OK, "Failed 0x%08x\n", hr);
+
+ hr = IWMSyncReader_QueryInterface(reader, &IID_IWMHeaderInfo2, (void
**)&header2);
+ todo_wine ok(hr == S_OK, "Failed 0x%08x\n", hr);
+
+ hr = IWMSyncReader_QueryInterface(reader, &IID_IWMHeaderInfo3, (void
**)&header3);
+ todo_wine ok(hr == S_OK, "Failed 0x%08x\n", hr);
+
+ hr = IWMSyncReader_QueryInterface(reader, &IID_IWMProfile, (void
**)&profile);
+ todo_wine ok(hr == S_OK, "Failed 0x%08x\n", hr);
+
+ hr = IWMSyncReader_QueryInterface(reader, &IID_IWMProfile2, (void
**)&profile2);
+ todo_wine ok(hr == S_OK, "Failed 0x%08x\n", hr);
+
+ hr = IWMSyncReader_QueryInterface(reader, &IID_IWMProfile3, (void
**)&profile3);
+ todo_wine ok(hr == S_OK, "Failed 0x%08x\n", hr);
+
+ hr = IWMSyncReader_QueryInterface(reader, &IID_IWMPacketSize, (void
**)&packet);
+ todo_wine ok(hr == S_OK, "Failed 0x%08x\n", hr);
+
+ hr = IWMSyncReader_QueryInterface(reader, &IID_IWMPacketSize2, (void
**)&packet2);
+ todo_wine ok(hr == S_OK, "Failed 0x%08x\n", hr);
+
+ hr = IWMSyncReader_QueryInterface(reader, &IID_IWMReaderTimecode, (void
**)&timecode);
+ todo_wine ok(hr == S_OK, "Failed 0x%08x\n", hr);
+
+ hr = IWMSyncReader_QueryInterface(reader, &IID_IWMReaderPlaylistBurn, (void
**)&playlist);
+ todo_wine ok(hr == S_OK, "Failed 0x%08x\n", hr);
+
+ hr = IWMSyncReader_QueryInterface(reader, &IID_IWMLanguageList, (void
**)&langlist);
+ todo_wine ok(hr == S_OK, "Failed 0x%08x\n", hr);
+
+ if(packet)
+ IWMPacketSize_Release(packet);
+ if(packet2)
+ IWMPacketSize2_Release(packet2);
+ if(profile)
+ IWMProfile_Release(profile);
+ if(profile2)
+ IWMProfile2_Release(profile2);
+ if(profile3)
+ IWMProfile3_Release(profile3);
+ if(header)
+ IWMHeaderInfo_Release(header);
+ if(header2)
+ IWMHeaderInfo2_Release(header2);
+ if(header3)
+ IWMHeaderInfo3_Release(header3);
+ if(timecode)
+ IWMReaderTimecode_Release(timecode);
+ if(playlist)
+ IWMReaderPlaylistBurn_Release(playlist);
+ if(langlist)
+ IWMLanguageList_Release(langlist);
+
+
+ IWMSyncReader_Release(reader);
+}
+
+
static void test_profile_manager_interfaces(void)
{
HRESULT hr;
@@ -232,6 +318,26 @@ static void test_WMCreateWriterPriv(void)
IWMWriter_Release(writer2);
}
+static void test_urlextension(void)
+{
+ HRESULT hr;
+ const WCHAR mp3file[] =
{'t','e','s','t','.','m','p','3',0};
+ const WCHAR mkvfile[] =
{'t','e','s','t','.','m','k','v',0};
+ const WCHAR urlfile[] =
{'a','b','c','d',':','/','/','t','e','s','t','/','t','e','s','t','.','w','m','v',0};
+ const WCHAR testurl[] =
{'h','t','t','p',':','/','/','t','e','s','t','/','t','.','a','s','f','?','a','l','t','=','t','.','m','k','v',0};
+
+ hr = WMCheckURLExtension(NULL);
+ ok(hr == E_INVALIDARG, "WMCheckURLExtension failed 0x%08x\n", hr);
+ hr = WMCheckURLExtension(mkvfile);
+ ok(hr == NS_E_INVALID_NAME, "WMCheckURLExtension failed 0x%08x\n", hr);
+ hr = WMCheckURLExtension(mp3file);
+ todo_wine ok(hr == S_OK, "WMCheckURLExtension failed 0x%08x\n", hr);
+ hr = WMCheckURLExtension(urlfile);
+ todo_wine ok(hr == S_OK, "WMCheckURLExtension failed 0x%08x\n", hr);
+ hr = WMCheckURLExtension(testurl);
+ todo_wine ok(hr == S_OK, "WMCheckURLExtension failed 0x%08x\n", hr);
+}
+
START_TEST(wmvcore)
{
HRESULT hr;
@@ -242,9 +348,11 @@ START_TEST(wmvcore)
return;
test_wmreader_interfaces();
+ test_wmsyncreader_interfaces();
test_wmwriter_interfaces();
test_profile_manager_interfaces();
test_WMCreateWriterPriv();
+ test_urlextension();
CoUninitialize();
}