From 90e4ad3b144b44805e21b8549129c29e75b797e2 Mon Sep 17 00:00:00 2001 From: Bruno Jesus <00cpxxx@gmail.com> Date: Tue, 22 Nov 2016 03:52:53 -0200 Subject: [PATCH] msvfw32/tests: Add tests for ICInfo(). Signed-off-by: Bruno Jesus <00cpxxx@gmail.com> Signed-off-by: Alexandre Julliard --- dlls/msvfw32/tests/msvfw.c | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/dlls/msvfw32/tests/msvfw.c b/dlls/msvfw32/tests/msvfw.c index 125cac51744..507d003ec31 100644 --- a/dlls/msvfw32/tests/msvfw.c +++ b/dlls/msvfw32/tests/msvfw.c @@ -285,9 +285,47 @@ static void test_ICSeqCompress(void) ok(err == ICERR_BADHANDLE, "Expected -8, got %d\n", err); } +static void test_ICInfo(void) +{ + ICINFO info, info2; + DWORD i, found; + unsigned char *fcc; + + for (i = found = 0; ICInfo(0, i, &info); i++) + { + trace("Codec name: %s, fccHandler: 0x%08x\n", wine_dbgstr_w(info.szName), info.fccHandler); + + ok(ICInfo(info.fccType, info.fccHandler, &info2), + "ICInfo failed on fcc 0x%08x\n", info.fccHandler); + + fcc = (unsigned char *)&info.fccHandler; + if (!isalpha(fcc[0])) continue; + + found++; + /* Test getting info with a different case - bug 41602 */ + if (fcc[0] & 0x20) + { + fcc[0] &= ~0x20; +todo_wine + ok(ICInfo(info.fccType, info.fccHandler, &info2), + "ICInfo failed on fcc 0x%08x using lowercase fccHandler\n", info.fccHandler); + } + else + { + fcc[0] |= 0x20; +todo_wine + ok(ICInfo(info.fccType, info.fccHandler, &info2), + "ICInfo failed on fcc 0x%08x using uppercase fccHandler\n", info.fccHandler); + } + } +todo_wine + ok(found != 0, "expected at least one codec\n"); +} + START_TEST(msvfw) { test_OpenCase(); test_Locate(); test_ICSeqCompress(); + test_ICInfo(); } -- 2.11.4.GIT