[PATCH 2/6] dmloader/tests: Centralize the skip().
Michael Stefaniuc
mstefani at redhat.de
Wed Mar 12 17:00:53 CDT 2014
---
dlls/dmloader/tests/loader.c | 26 +++++++++++++++++++++-----
1 file changed, 21 insertions(+), 5 deletions(-)
diff --git a/dlls/dmloader/tests/loader.c b/dlls/dmloader/tests/loader.c
index 8759033..3d8dd80 100644
--- a/dlls/dmloader/tests/loader.c
+++ b/dlls/dmloader/tests/loader.c
@@ -27,17 +27,26 @@ static unsigned char rifffile[8+4+8+16+8+256] = "RIFF\x24\x01\x00\x00WAVE" /* he
"fmt \x10\x00\x00\x00\x01\x00\x20\x00\xAC\x44\x00\x00\x10\xB1\x02\x00\x04\x00\x10\x00" /* format segment: PCM, 2 chan, 44100 Hz, 16 bits */
"data\x00\x01\x00\x00"; /* 256 byte data segment (silence) */
+static BOOL missing_dmloader(void)
+{
+ IDirectMusicLoader *dml;
+ HRESULT hr = CoCreateInstance(&CLSID_DirectMusicLoader, NULL, CLSCTX_INPROC_SERVER,
+ &IID_IDirectMusicLoader, (void**)&dml);
+
+ if (hr == S_OK && dml)
+ {
+ IDirectMusicLoader_Release(dml);
+ return FALSE;
+ }
+ return TRUE;
+}
+
static void test_release_object(void)
{
HRESULT hr;
IDirectMusicLoader8* loader = NULL;
hr = CoCreateInstance(&CLSID_DirectMusicLoader, NULL, CLSCTX_INPROC, &IID_IDirectMusicLoader8, (void**)&loader);
- if ( FAILED(hr) )
- {
- skip("CoCreateInstance failed.\n");
- return;
- }
hr = IDirectMusicLoader_ReleaseObject(loader, NULL);
ok(hr == E_POINTER, "Expected E_POINTER, received %#x\n", hr);
@@ -128,6 +137,13 @@ static void test_simple_playing(void)
START_TEST(loader)
{
CoInitialize(NULL);
+
+ if (missing_dmloader())
+ {
+ skip("dmloader not available\n");
+ CoUninitialize();
+ return;
+ }
test_release_object();
test_simple_playing();
CoUninitialize();
--
1.8.3.1
More information about the wine-patches
mailing list