Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
94c78064
Commit
94c78064
authored
Jul 06, 2013
by
Damjan Jovanovic
Committed by
Alexandre Julliard
Jul 10, 2013
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
qcap/tests: Add a smart tee filter test.
parent
14619e86
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
121 additions
and
0 deletions
+121
-0
configure
configure
+1
-0
configure.ac
configure.ac
+1
-0
Makefile.in
dlls/qcap/tests/Makefile.in
+7
-0
qcap.c
dlls/qcap/tests/qcap.c
+112
-0
No files found.
configure
View file @
94c78064
...
@@ -16153,6 +16153,7 @@ wine_fn_config_dll psapi enable_psapi implib
...
@@ -16153,6 +16153,7 @@ wine_fn_config_dll psapi enable_psapi implib
wine_fn_config_test dlls/psapi/tests psapi_test
wine_fn_config_test dlls/psapi/tests psapi_test
wine_fn_config_dll pstorec enable_pstorec
wine_fn_config_dll pstorec enable_pstorec
wine_fn_config_dll qcap enable_qcap
wine_fn_config_dll qcap enable_qcap
wine_fn_config_test dlls/qcap/tests qcap_test
wine_fn_config_dll qedit enable_qedit
wine_fn_config_dll qedit enable_qedit
wine_fn_config_test dlls/qedit/tests qedit_test
wine_fn_config_test dlls/qedit/tests qedit_test
wine_fn_config_dll qmgr enable_qmgr
wine_fn_config_dll qmgr enable_qmgr
...
...
configure.ac
View file @
94c78064
...
@@ -2978,6 +2978,7 @@ WINE_CONFIG_DLL(psapi,,[implib])
...
@@ -2978,6 +2978,7 @@ WINE_CONFIG_DLL(psapi,,[implib])
WINE_CONFIG_TEST(dlls/psapi/tests)
WINE_CONFIG_TEST(dlls/psapi/tests)
WINE_CONFIG_DLL(pstorec)
WINE_CONFIG_DLL(pstorec)
WINE_CONFIG_DLL(qcap)
WINE_CONFIG_DLL(qcap)
WINE_CONFIG_TEST(dlls/qcap/tests)
WINE_CONFIG_DLL(qedit)
WINE_CONFIG_DLL(qedit)
WINE_CONFIG_TEST(dlls/qedit/tests)
WINE_CONFIG_TEST(dlls/qedit/tests)
WINE_CONFIG_DLL(qmgr)
WINE_CONFIG_DLL(qmgr)
...
...
dlls/qcap/tests/Makefile.in
0 → 100644
View file @
94c78064
TESTDLL
=
qcap.dll
IMPORTS
=
strmiids uuid oleaut32 ole32 advapi32
C_SRCS
=
\
qcap.c
@MAKE_TEST_RULES@
dlls/qcap/tests/qcap.c
0 → 100644
View file @
94c78064
/*
* QCAP tests
*
* Copyright 2013 Damjan Jovanovic
*
* 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 <stdarg.h>
#include "windef.h"
#include "winbase.h"
#define COBJMACROS
#include <dshow.h>
#include <guiddef.h>
#include <devguid.h>
#include <stdio.h>
#include "wine/strmbase.h"
#include "wine/test.h"
static
void
test_smart_tee_filter
(
void
)
{
HRESULT
hr
;
IBaseFilter
*
smartTeeFilter
=
NULL
;
IEnumPins
*
enumPins
=
NULL
;
IPin
*
pin
;
FILTER_INFO
filterInfo
;
int
pinNumber
=
0
;
hr
=
CoCreateInstance
(
&
CLSID_SmartTee
,
NULL
,
CLSCTX_INPROC_SERVER
,
&
IID_IBaseFilter
,
(
void
**
)
&
smartTeeFilter
);
todo_wine
ok
(
SUCCEEDED
(
hr
),
"couldn't create smart tee filter, hr=%08x
\n
"
,
hr
);
if
(
FAILED
(
hr
))
goto
end
;
hr
=
IBaseFilter_QueryFilterInfo
(
smartTeeFilter
,
&
filterInfo
);
ok
(
SUCCEEDED
(
hr
),
"QueryFilterInfo failed, hr=%08x
\n
"
,
hr
);
if
(
FAILED
(
hr
))
goto
end
;
ok
(
lstrlenW
(
filterInfo
.
achName
)
==
0
,
"filter's name is meant to be empty but it's %s
\n
"
,
wine_dbgstr_w
(
filterInfo
.
achName
));
hr
=
IBaseFilter_EnumPins
(
smartTeeFilter
,
&
enumPins
);
ok
(
SUCCEEDED
(
hr
),
"cannot enum filter pins, hr=%08x
\n
"
,
hr
);
if
(
FAILED
(
hr
))
goto
end
;
while
(
IEnumPins_Next
(
enumPins
,
1
,
&
pin
,
NULL
)
==
S_OK
)
{
PIN_INFO
pinInfo
;
hr
=
IPin_QueryPinInfo
(
pin
,
&
pinInfo
);
ok
(
SUCCEEDED
(
hr
),
"QueryPinInfo failed, hr=%08x
\n
"
,
hr
);
if
(
FAILED
(
hr
))
goto
endwhile
;
if
(
pinNumber
==
0
)
{
static
const
WCHAR
wszInput
[]
=
{
'I'
,
'n'
,
'p'
,
'u'
,
't'
,
0
};
ok
(
pinInfo
.
dir
==
PINDIR_INPUT
,
"pin 0 isn't an input pin
\n
"
);
ok
(
!
lstrcmpW
(
pinInfo
.
achName
,
wszInput
),
"pin 0 is called %s, not 'Input'
\n
"
,
wine_dbgstr_w
(
pinInfo
.
achName
));
}
else
if
(
pinNumber
==
1
)
{
static
const
WCHAR
wszCapture
[]
=
{
'C'
,
'a'
,
'p'
,
't'
,
'u'
,
'r'
,
'e'
,
0
};
ok
(
pinInfo
.
dir
==
PINDIR_OUTPUT
,
"pin 1 isn't an output pin
\n
"
);
ok
(
!
lstrcmpW
(
pinInfo
.
achName
,
wszCapture
),
"pin 1 is called %s, not 'Capture'
\n
"
,
wine_dbgstr_w
(
pinInfo
.
achName
));
}
else
if
(
pinNumber
==
2
)
{
static
const
WCHAR
wszPreview
[]
=
{
'P'
,
'r'
,
'e'
,
'v'
,
'i'
,
'e'
,
'w'
,
0
};
ok
(
pinInfo
.
dir
==
PINDIR_OUTPUT
,
"pin 2 isn't an output pin
\n
"
);
ok
(
!
lstrcmpW
(
pinInfo
.
achName
,
wszPreview
),
"pin 2 is called %s, not 'Preview'
\n
"
,
wine_dbgstr_w
(
pinInfo
.
achName
));
}
else
ok
(
0
,
"pin %d isn't supposed to exist
\n
"
,
pinNumber
);
endwhile:
IPin_Release
(
pin
);
pinNumber
++
;
}
end:
if
(
smartTeeFilter
)
IBaseFilter_Release
(
smartTeeFilter
);
if
(
enumPins
)
IEnumPins_Release
(
enumPins
);
}
START_TEST
(
qcap
)
{
if
(
SUCCEEDED
(
CoInitialize
(
NULL
)))
{
test_smart_tee_filter
();
CoUninitialize
();
}
else
skip
(
"CoInitialize failed
\n
"
);
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment