From: Brendan McGrath <bmcgrath(a)codeweavers.com> --- dlls/mf/tests/mf.c | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/dlls/mf/tests/mf.c b/dlls/mf/tests/mf.c index 7c40ad15a38..4d495681fe6 100644 --- a/dlls/mf/tests/mf.c +++ b/dlls/mf/tests/mf.c @@ -4902,13 +4902,33 @@ static void test_sample_grabber_seek(void) todo_wine ok(samples_requested == 4, "Unexpected number of samples requested %d\n", samples_requested); - /* test sample received in the stopped state */ + /* test pause and resume with 4 samples queued */ + hr = IMFClockStateSink_OnClockPause(clock_sink, 0); + ok(hr == S_OK, "Unexpected hr %#lx.\n", hr); + + hr = IMFClockStateSink_OnClockRestart(clock_sink, 0); + ok(hr == S_OK, "Unexpected hr %#lx.\n", hr); + + samples_requested = count_samples_requested(stream); + ok(samples_requested == 0, "Unexpected number of samples requested %d\n", samples_requested); + + /* test pause and seek with 4 samples queued */ + hr = IMFClockStateSink_OnClockPause(clock_sink, 0); + ok(hr == S_OK, "Unexpected hr %#lx.\n", hr); + SET_EXPECT(timer_CancelTimer); - hr = IMFClockStateSink_OnClockStop(clock_sink, 0); + hr = IMFClockStateSink_OnClockStart(clock_sink, 0, 1234567); ok(hr == S_OK, "Unexpected hr %#lx.\n", hr); todo_wine CHECK_CALLED(timer_CancelTimer); + samples_requested = count_samples_requested(stream); + ok(samples_requested == 0, "Unexpected number of samples requested %d\n", samples_requested); + + /* test sample received in the stopped state */ + hr = IMFClockStateSink_OnClockStop(clock_sink, 0); + ok(hr == S_OK, "Unexpected hr %#lx.\n", hr); + supply_samples(stream, 4); hr = IMFClockStateSink_OnClockRestart(clock_sink, 0); -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/9489