opcservices/tests: Add some tests.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
2346a4012a
commit
5144584553
|
@ -19715,6 +19715,7 @@ wine_fn_config_makefile dlls/olesvr.dll16 enable_win16
|
||||||
wine_fn_config_makefile dlls/olesvr32 enable_olesvr32
|
wine_fn_config_makefile dlls/olesvr32 enable_olesvr32
|
||||||
wine_fn_config_makefile dlls/olethk32 enable_olethk32
|
wine_fn_config_makefile dlls/olethk32 enable_olethk32
|
||||||
wine_fn_config_makefile dlls/opcservices enable_opcservices
|
wine_fn_config_makefile dlls/opcservices enable_opcservices
|
||||||
|
wine_fn_config_makefile dlls/opcservices/tests enable_tests
|
||||||
wine_fn_config_makefile dlls/openal32 enable_openal32
|
wine_fn_config_makefile dlls/openal32 enable_openal32
|
||||||
wine_fn_config_makefile dlls/opencl enable_opencl
|
wine_fn_config_makefile dlls/opencl enable_opencl
|
||||||
wine_fn_config_makefile dlls/opengl32 enable_opengl32
|
wine_fn_config_makefile dlls/opengl32 enable_opengl32
|
||||||
|
|
|
@ -3574,6 +3574,7 @@ WINE_CONFIG_MAKEFILE(dlls/olesvr.dll16,enable_win16)
|
||||||
WINE_CONFIG_MAKEFILE(dlls/olesvr32)
|
WINE_CONFIG_MAKEFILE(dlls/olesvr32)
|
||||||
WINE_CONFIG_MAKEFILE(dlls/olethk32)
|
WINE_CONFIG_MAKEFILE(dlls/olethk32)
|
||||||
WINE_CONFIG_MAKEFILE(dlls/opcservices)
|
WINE_CONFIG_MAKEFILE(dlls/opcservices)
|
||||||
|
WINE_CONFIG_MAKEFILE(dlls/opcservices/tests)
|
||||||
WINE_CONFIG_MAKEFILE(dlls/openal32)
|
WINE_CONFIG_MAKEFILE(dlls/openal32)
|
||||||
WINE_CONFIG_MAKEFILE(dlls/opencl)
|
WINE_CONFIG_MAKEFILE(dlls/opencl)
|
||||||
WINE_CONFIG_MAKEFILE(dlls/opengl32)
|
WINE_CONFIG_MAKEFILE(dlls/opengl32)
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
TESTDLL = opcservices.dll
|
||||||
|
IMPORTS = ole32
|
||||||
|
|
||||||
|
C_SRCS = \
|
||||||
|
opcservices.c
|
|
@ -0,0 +1,85 @@
|
||||||
|
/*
|
||||||
|
* Font related tests
|
||||||
|
*
|
||||||
|
* Copyright 2012, 2014-2017 Nikolay Sivov for CodeWeavers
|
||||||
|
* Copyright 2014 Aric Stewart for CodeWeavers
|
||||||
|
*
|
||||||
|
* 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
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define COBJMACROS
|
||||||
|
|
||||||
|
#include "windows.h"
|
||||||
|
#include "initguid.h"
|
||||||
|
#include "msopc.h"
|
||||||
|
|
||||||
|
#include "wine/test.h"
|
||||||
|
|
||||||
|
static IOpcFactory *create_factory(void)
|
||||||
|
{
|
||||||
|
IOpcFactory *factory = NULL;
|
||||||
|
CoCreateInstance(&CLSID_OpcFactory, NULL, CLSCTX_INPROC_SERVER, &IID_IOpcFactory, (void **)&factory);
|
||||||
|
return factory;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void test_package(void)
|
||||||
|
{
|
||||||
|
IOpcPartSet *partset, *partset2;
|
||||||
|
IOpcFactory *factory;
|
||||||
|
IOpcPackage *package;
|
||||||
|
HRESULT hr;
|
||||||
|
|
||||||
|
factory = create_factory();
|
||||||
|
|
||||||
|
hr = IOpcFactory_CreatePackage(factory, &package);
|
||||||
|
ok(SUCCEEDED(hr) || broken(hr == E_NOTIMPL) /* Vista */, "Failed to create a package, hr %#x.\n", hr);
|
||||||
|
if (FAILED(hr))
|
||||||
|
{
|
||||||
|
IOpcFactory_Release(factory);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
hr = IOpcPackage_GetPartSet(package, &partset);
|
||||||
|
ok(SUCCEEDED(hr), "Failed to create a part set, hr %#x.\n", hr);
|
||||||
|
|
||||||
|
hr = IOpcPackage_GetPartSet(package, &partset2);
|
||||||
|
ok(SUCCEEDED(hr), "Failed to create a part set, hr %#x.\n", hr);
|
||||||
|
ok(partset == partset2, "Expected same part set instance.\n");
|
||||||
|
|
||||||
|
IOpcPackage_Release(package);
|
||||||
|
|
||||||
|
IOpcFactory_Release(factory);
|
||||||
|
}
|
||||||
|
|
||||||
|
START_TEST(opcservices)
|
||||||
|
{
|
||||||
|
IOpcFactory *factory;
|
||||||
|
HRESULT hr;
|
||||||
|
|
||||||
|
hr = CoInitialize(NULL);
|
||||||
|
ok(SUCCEEDED(hr), "Failed to initialize COM, hr %#x.\n", hr);
|
||||||
|
|
||||||
|
if (!(factory = create_factory())) {
|
||||||
|
win_skip("Failed to create IOpcFactory factory.\n");
|
||||||
|
CoUninitialize();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
test_package();
|
||||||
|
|
||||||
|
IOpcFactory_Release(factory);
|
||||||
|
|
||||||
|
CoUninitialize();
|
||||||
|
}
|
Loading…
Reference in New Issue