You've already forked wine-staging
mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2025-04-13 14:42:51 -07:00
Rebase against f4a66ad257df4605e73dfea792eec55a70a04e84.
This commit is contained in:
@ -1,146 +0,0 @@
|
||||
From baccae5a9e11bdf89cbbc55b5b4b00fa12aec9fa Mon Sep 17 00:00:00 2001
|
||||
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
Date: Tue, 14 Jan 2020 13:42:48 +1100
|
||||
Subject: [PATCH] xactengine3_7: Initial IXACT3Engine tests
|
||||
|
||||
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
---
|
||||
configure.ac | 1 +
|
||||
dlls/xactengine3_7/tests/Makefile.in | 5 ++
|
||||
dlls/xactengine3_7/tests/xact3.c | 100 +++++++++++++++++++++++++++
|
||||
3 files changed, 106 insertions(+)
|
||||
create mode 100644 dlls/xactengine3_7/tests/Makefile.in
|
||||
create mode 100644 dlls/xactengine3_7/tests/xact3.c
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 51205d1451b..3f1937f6e07 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -3916,6 +3916,7 @@ WINE_CONFIG_MAKEFILE(dlls/xactengine3_4)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine3_5)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine3_6)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xactengine3_7)
|
||||
+WINE_CONFIG_MAKEFILE(dlls/xactengine3_7/tests)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xapofx1_1)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xapofx1_2)
|
||||
WINE_CONFIG_MAKEFILE(dlls/xapofx1_3)
|
||||
diff --git a/dlls/xactengine3_7/tests/Makefile.in b/dlls/xactengine3_7/tests/Makefile.in
|
||||
new file mode 100644
|
||||
index 00000000000..c32b2562546
|
||||
--- /dev/null
|
||||
+++ b/dlls/xactengine3_7/tests/Makefile.in
|
||||
@@ -0,0 +1,5 @@
|
||||
+TESTDLL = xactengine3_7.dll
|
||||
+IMPORTS = ole32
|
||||
+
|
||||
+C_SRCS = \
|
||||
+ xact3.c
|
||||
diff --git a/dlls/xactengine3_7/tests/xact3.c b/dlls/xactengine3_7/tests/xact3.c
|
||||
new file mode 100644
|
||||
index 00000000000..9b0d3defb09
|
||||
--- /dev/null
|
||||
+++ b/dlls/xactengine3_7/tests/xact3.c
|
||||
@@ -0,0 +1,100 @@
|
||||
+/*
|
||||
+ * Copyright (c) 2020 Alistair Leslie-Hughes
|
||||
+ *
|
||||
+ * This library is free software; you can redistribute it and/or
|
||||
+ * modify it under the terms of the GNU Lesser General Public
|
||||
+ * License as published by the Free Software Foundation; either
|
||||
+ * version 2.1 of the License, or (at your option) any later version.
|
||||
+ *
|
||||
+ * This library is distributed in the hope that it will be useful,
|
||||
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
+ * Lesser General Public License for more details.
|
||||
+ *
|
||||
+ * You should have received a copy of the GNU Lesser General Public
|
||||
+ * License along with this library; if not, write to the Free Software
|
||||
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
+ */
|
||||
+
|
||||
+#include <windows.h>
|
||||
+#include <math.h>
|
||||
+#include <limits.h>
|
||||
+#include <float.h>
|
||||
+
|
||||
+#define COBJMACROS
|
||||
+#include "wine/test.h"
|
||||
+
|
||||
+#include "x3daudio.h"
|
||||
+
|
||||
+#include "initguid.h"
|
||||
+#include "xact3.h"
|
||||
+
|
||||
+DEFINE_GUID(IID_IXACT3Engine30, 0x9e33f661, 0x2d07, 0x43ec, 0x97, 0x04, 0xbb, 0xcb, 0x71, 0xa5, 0x49, 0x72);
|
||||
+DEFINE_GUID(IID_IXACT3Engine31, 0xe72c1b9a, 0xd717, 0x41c0, 0x81, 0xa6, 0x50, 0xeb, 0x56, 0xe8, 0x06, 0x49);
|
||||
+
|
||||
+DEFINE_GUID(CLSID_XACTEngine30, 0x3b80ee2a, 0xb0f5, 0x4780, 0x9e, 0x30, 0x90, 0xcb, 0x39, 0x68, 0x5b, 0x03);
|
||||
+DEFINE_GUID(CLSID_XACTEngine31, 0x962f5027, 0x99be, 0x4692, 0xa4, 0x68, 0x85, 0x80, 0x2c, 0xf8, 0xde, 0x61);
|
||||
+DEFINE_GUID(CLSID_XACTEngine32, 0xd3332f02, 0x3dd0, 0x4de9, 0x9a, 0xec, 0x20, 0xd8, 0x5c, 0x41, 0x11, 0xb6);
|
||||
+DEFINE_GUID(CLSID_XACTEngine33, 0x94c1affa, 0x66e7, 0x4961, 0x95, 0x21, 0xcf, 0xde, 0xf3, 0x12, 0x8d, 0x4f);
|
||||
+DEFINE_GUID(CLSID_XACTEngine34, 0x0977d092, 0x2d95, 0x4e43, 0x8d, 0x42, 0x9d, 0xdc, 0xc2, 0x54, 0x5e, 0xd5);
|
||||
+DEFINE_GUID(CLSID_XACTEngine35, 0x074b110f, 0x7f58, 0x4743, 0xae, 0xa5, 0x12, 0xf1, 0x5b, 0x50, 0x74, 0xed);
|
||||
+DEFINE_GUID(CLSID_XACTEngine36, 0x248d8a3b, 0x6256, 0x44d3, 0xa0, 0x18, 0x2a, 0xc9, 0x6c, 0x45, 0x9f, 0x47);
|
||||
+
|
||||
+struct xact_interfaces
|
||||
+{
|
||||
+ REFGUID clsid;
|
||||
+ REFIID iid;
|
||||
+ HRESULT expected;
|
||||
+} xact_interfaces[] =
|
||||
+{
|
||||
+ {&CLSID_XACTEngine30, &IID_IXACT3Engine30, S_OK },
|
||||
+ {&CLSID_XACTEngine30, &IID_IXACT3Engine31, E_NOINTERFACE},
|
||||
+ {&CLSID_XACTEngine30, &IID_IXACT3Engine, E_NOINTERFACE },
|
||||
+
|
||||
+ /* Version 3.1 to 3.4 use the same inteface */
|
||||
+ {&CLSID_XACTEngine31, &IID_IXACT3Engine31, S_OK },
|
||||
+ {&CLSID_XACTEngine32, &IID_IXACT3Engine31, S_OK },
|
||||
+ {&CLSID_XACTEngine33, &IID_IXACT3Engine31, S_OK },
|
||||
+ {&CLSID_XACTEngine34, &IID_IXACT3Engine31, S_OK },
|
||||
+
|
||||
+ /* Version 3.5 to 3.7 use the same inteface */
|
||||
+ {&CLSID_XACTEngine35, &IID_IXACT3Engine31, E_NOINTERFACE },
|
||||
+ {&CLSID_XACTEngine35, &IID_IXACT3Engine, S_OK },
|
||||
+
|
||||
+ {&CLSID_XACTEngine36, &IID_IXACT3Engine31, E_NOINTERFACE },
|
||||
+ {&CLSID_XACTEngine36, &IID_IXACT3Engine, S_OK },
|
||||
+
|
||||
+ {&CLSID_XACTEngine, &IID_IXACT3Engine31, E_NOINTERFACE },
|
||||
+ {&CLSID_XACTEngine, &IID_IXACT3Engine, S_OK },
|
||||
+ {&CLSID_XACTEngine, &IID_IUnknown, S_OK },
|
||||
+};
|
||||
+
|
||||
+static void test_interfaces(void)
|
||||
+{
|
||||
+ IUnknown *unk;
|
||||
+ HRESULT hr;
|
||||
+ int i;
|
||||
+
|
||||
+ for (i = 0; i < ARRAY_SIZE(xact_interfaces); i++)
|
||||
+ {
|
||||
+ hr = CoCreateInstance(xact_interfaces[i].clsid, NULL, CLSCTX_INPROC_SERVER,
|
||||
+ xact_interfaces[i].iid, (void**)&unk);
|
||||
+ if (hr == REGDB_E_CLASSNOTREG)
|
||||
+ {
|
||||
+ trace("%d %s not registered. Skipping\n", i, wine_dbgstr_guid(xact_interfaces[i].clsid) );
|
||||
+ continue;
|
||||
+ }
|
||||
+ ok(hr == xact_interfaces[i].expected, "%d, Unexpected value 0x%08x\n", i, hr);
|
||||
+ if (hr == S_OK)
|
||||
+ IUnknown_Release(unk);
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+START_TEST(xact3)
|
||||
+{
|
||||
+ CoInitialize(NULL);
|
||||
+
|
||||
+ test_interfaces();
|
||||
+
|
||||
+ CoUninitialize();
|
||||
+}
|
||||
--
|
||||
2.28.0
|
||||
|
Reference in New Issue
Block a user