[PATCH] mf/tests: Add some tests for SAR time source.
Nikolay Sivov
nsivov at codeweavers.com
Wed Feb 26 09:05:39 CST 2020
Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
---
dlls/mf/tests/mf.c | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/dlls/mf/tests/mf.c b/dlls/mf/tests/mf.c
index a1a7d2b05a..8f3a80360f 100644
--- a/dlls/mf/tests/mf.c
+++ b/dlls/mf/tests/mf.c
@@ -2555,7 +2555,11 @@ static void test_quality_manager(void)
static void test_sar(void)
{
IMFPresentationTimeSource *time_source;
+ IMFClockStateSink *state_sink;
+ MFCLOCK_STATE state;
IMFMediaSink *sink;
+ IMFClock *clock;
+ DWORD flags;
HRESULT hr;
hr = CoInitialize(NULL);
@@ -2576,6 +2580,26 @@ if (SUCCEEDED(hr))
{
hr = IMFMediaSink_QueryInterface(sink, &IID_IMFPresentationTimeSource, (void **)&time_source);
ok(hr == S_OK, "Failed to get time source interface, hr %#x.\n", hr);
+
+ hr = IMFPresentationTimeSource_GetUnderlyingClock(time_source, &clock);
+ ok(hr == MF_E_NO_CLOCK, "Unexpected hr %#x.\n", hr);
+
+ hr = IMFPresentationTimeSource_GetClockCharacteristics(time_source, &flags);
+ ok(hr == S_OK, "Failed to get flags, hr %#x.\n", hr);
+ ok(flags == MFCLOCK_CHARACTERISTICS_FLAG_FREQUENCY_10MHZ, "Unexpected flags %#x.\n", flags);
+
+ hr = IMFPresentationTimeSource_GetState(time_source, 0, &state);
+ ok(hr == S_OK, "Failed to get clock state, hr %#x.\n", hr);
+ ok(state == MFCLOCK_STATE_INVALID, "Unexpected state %d.\n", state);
+
+ hr = IMFPresentationTimeSource_QueryInterface(time_source, &IID_IMFClockStateSink, (void **)&state_sink);
+ ok(hr == S_OK, "Failed to get state sink, hr %#x.\n", hr);
+
+ hr = IMFClockStateSink_OnClockStart(state_sink, 0, 0);
+ ok(hr == MF_E_NOT_INITIALIZED, "Unexpected hr %#x.\n", hr);
+
+ IMFClockStateSink_Release(state_sink);
+
IMFPresentationTimeSource_Release(time_source);
IMFMediaSink_Release(sink);
--
2.25.0
More information about the wine-devel
mailing list