[PATCH v2 4/5] mf/tests: Add some WMA decoder ProcessInput tests.

Rémi Bernon rbernon at codeweavers.com
Wed Jan 26 04:41:14 CST 2022


Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51931
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52391
Signed-off-by: Rémi Bernon <rbernon at codeweavers.com>
---
 dlls/mf/tests/mf.c | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

diff --git a/dlls/mf/tests/mf.c b/dlls/mf/tests/mf.c
index 4a8644bff4f..6289bfbd993 100644
--- a/dlls/mf/tests/mf.c
+++ b/dlls/mf/tests/mf.c
@@ -5860,6 +5860,7 @@ static void test_wma_decoder(void)
     MFT_INPUT_STREAM_INFO input_info;
     IMFMediaType *media_type;
     IMFTransform *transform;
+    IMFSample *sample;
     GUID class_id;
     ULONG i, ret;
     HRESULT hr;
@@ -6048,8 +6049,38 @@ static void test_wma_decoder(void)
     todo_wine
     ok(output_info.cbAlignment == 1, "got cbAlignment %#x\n", output_info.cbAlignment);
 
+    sample = create_sample(wma_encoded_data[0], wma_block_size / 2);
+    hr = IMFTransform_ProcessInput(transform, 0, sample, 0);
+    todo_wine
+    ok(hr == S_OK, "ProcessInput returned %#x\n", hr);
+    ret = IMFSample_Release(sample);
+    ok(ret == 0, "Release returned %u\n", ret);
+    sample = create_sample(wma_encoded_data[0] + wma_block_size, wma_block_size - wma_block_size / 2);
+    hr = IMFTransform_ProcessInput(transform, 0, sample, 0);
+    todo_wine
+    ok(hr == S_OK, "ProcessInput returned %#x\n", hr);
+    ret = IMFSample_Release(sample);
+    ok(ret == 0, "Release returned %u\n", ret);
+    sample = create_sample(wma_encoded_data[0], wma_block_size);
+    hr = IMFTransform_ProcessInput(transform, 0, sample, 0);
+    todo_wine
+    ok(hr == S_OK, "ProcessInput returned %#x\n", hr);
+    hr = IMFTransform_ProcessInput(transform, 0, sample, 0);
+    todo_wine
+    ok(hr == MF_E_NOTACCEPTING, "ProcessInput returned %#x\n", hr);
+    ret = IMFSample_Release(sample);
+    todo_wine
+    ok(ret == 1, "Release returned %u\n", ret);
+
+    sample = create_sample(wma_encoded_data[0], wma_block_size);
+    hr = IMFTransform_ProcessInput(transform, 0, sample, 0);
+    todo_wine
+    ok(hr == S_OK, "ProcessInput returned %#x\n", hr);
+
     ret = IMFTransform_Release(transform);
     ok(ret == 0, "Release returned %u\n", ret);
+    ret = IMFSample_Release(sample);
+    ok(ret == 0, "Release returned %u\n", ret);
 
 failed:
     CoUninitialize();
-- 
2.34.1




More information about the wine-devel mailing list