Qian Hong : imm32/tests: Added test for IMC lock count.

Alexandre Julliard julliard at winehq.org
Thu Aug 1 14:25:45 CDT 2013


Module: wine
Branch: master
Commit: 0f14a77f5da795cc240716486a16bc92462d7274
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=0f14a77f5da795cc240716486a16bc92462d7274

Author: Qian Hong <qhong at codeweavers.com>
Date:   Thu Aug  1 14:32:24 2013 +0800

imm32/tests: Added test for IMC lock count.

---

 dlls/imm32/tests/imm32.c |   26 ++++++++++++++++++++++++++
 1 files changed, 26 insertions(+), 0 deletions(-)

diff --git a/dlls/imm32/tests/imm32.c b/dlls/imm32/tests/imm32.c
index 8e6dab8..7313854 100644
--- a/dlls/imm32/tests/imm32.c
+++ b/dlls/imm32/tests/imm32.c
@@ -24,6 +24,7 @@
 #include "winuser.h"
 #include "wingdi.h"
 #include "imm.h"
+#include "ddk/imm.h"
 
 #define NUMELEMS(array) (sizeof((array))/sizeof((array)[0]))
 
@@ -687,6 +688,30 @@ static void test_ImmDefaultHwnd(void)
     DestroyWindow(hwnd);
 }
 
+static void test_ImmGetIMCLockCount(void)
+{
+    HIMC imc;
+    DWORD count, ret;
+    INPUTCONTEXT *ic;
+
+    imc = ImmCreateContext();
+    count = ImmGetIMCLockCount(imc);
+    ok(count == 0, "expect 0, returned %d\n", count);
+    ic = ImmLockIMC(imc);
+    ok(ic != NULL, "ImmLockIMC failed\n!");
+    count = ImmGetIMCLockCount(imc);
+    ok(count == 1, "expect 1, returned %d\n", count);
+    ret = ImmUnlockIMC(imc);
+    todo_wine ok(ret == TRUE, "expect TRUE, ret %d\n", ret);
+    count = ImmGetIMCLockCount(imc);
+    ok(count == 0, "expect 0, returned %d\n", count);
+    ret = ImmUnlockIMC(imc);
+    ok(ret == TRUE, "expect TRUE, ret %d\n", ret);
+    count = ImmGetIMCLockCount(imc);
+    todo_wine ok(count == 0, "expect 0, returned %d\n", count);
+    ImmDestroyContext(imc);
+}
+
 static void test_ImmMessages(void)
 {
     CANDIDATEFORM cf;
@@ -846,6 +871,7 @@ START_TEST(imm32) {
         test_ImmGetContext();
         test_ImmGetDescription();
         test_ImmDefaultHwnd();
+        test_ImmGetIMCLockCount();
         msg_spy_cleanup();
         /* Reinitialize the hooks to capture all windows */
         msg_spy_init(NULL);




More information about the wine-cvs mailing list