Jactry Zeng : riched20/tests: Test EM_REPLACESEL with rtf stream.
Alexandre Julliard
julliard at wine.codeweavers.com
Mon Nov 30 09:54:02 CST 2015
Module: wine
Branch: master
Commit: 7365f557b6bc792efb4f73523c318cfce0625092
URL: http://source.winehq.org/git/wine.git/?a=commit;h=7365f557b6bc792efb4f73523c318cfce0625092
Author: Jactry Zeng <jzeng at codeweavers.com>
Date: Fri Nov 27 16:44:20 2015 +0800
riched20/tests: Test EM_REPLACESEL with rtf stream.
Signed-off-by: Jactry Zeng <jzeng at codeweavers.com>
Signed-off-by: Huw Davies <huw at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/riched20/tests/editor.c | 44 ++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)
diff --git a/dlls/riched20/tests/editor.c b/dlls/riched20/tests/editor.c
index 31af4b2..46d93aa 100644
--- a/dlls/riched20/tests/editor.c
+++ b/dlls/riched20/tests/editor.c
@@ -4561,6 +4561,8 @@ static void test_EM_REPLACESEL(int redraw)
int r;
GETTEXTEX getText;
CHARRANGE cr;
+ CHAR rtfstream[] = "{\\rtf1 TestSomeText}";
+ CHAR urtfstream[] = "{\\urtf1 TestSomeText}";
/* sending some text to the window */
SendMessageA(hwndRichEdit, WM_SETTEXT, 0, (LPARAM)"testing selection");
@@ -4833,6 +4835,48 @@ static void test_EM_REPLACESEL(int redraw)
r = SendMessageA(hwndRichEdit, EM_GETLINECOUNT, 0, 0);
ok(r == 7, "EM_GETLINECOUNT returned %d, expected 7\n", r);
+ SendMessageA(hwndRichEdit, WM_SETTEXT, 0, 0);
+ r = SendMessageA(hwndRichEdit, EM_REPLACESEL, 0, (LPARAM)rtfstream);
+ todo_wine ok(r == 12, "EM_REPLACESEL returned %d, expected 12\n", r);
+ r = SendMessageA(hwndRichEdit, EM_EXGETSEL, 0, (LPARAM)&cr);
+ ok(0 == r, "EM_EXGETSEL returned %d, expected 0\n", r);
+ todo_wine ok(cr.cpMin == 12, "EM_EXGETSEL returned cpMin=%d, expected 12\n", cr.cpMin);
+ todo_wine ok(cr.cpMax == 12, "EM_EXGETSEL returned cpMax=%d, expected 12\n", cr.cpMax);
+ SendMessageA(hwndRichEdit, WM_GETTEXT, 1024, (LPARAM)buffer);
+ todo_wine ok(!strcmp(buffer, "TestSomeText"), "WM_GETTEXT returned incorrect string\n");
+
+ SendMessageA(hwndRichEdit, WM_SETTEXT, 0, 0);
+ r = SendMessageA(hwndRichEdit, EM_REPLACESEL, 0, (LPARAM)urtfstream);
+ todo_wine ok(r == 12, "EM_REPLACESEL returned %d, expected 12\n", r);
+ r = SendMessageA(hwndRichEdit, EM_EXGETSEL, 0, (LPARAM)&cr);
+ ok(0 == r, "EM_EXGETSEL returned %d, expected 0\n", r);
+ todo_wine ok(cr.cpMin == 12, "EM_EXGETSEL returned cpMin=%d, expected 12\n", cr.cpMin);
+ todo_wine ok(cr.cpMax == 12, "EM_EXGETSEL returned cpMax=%d, expected 12\n", cr.cpMax);
+ SendMessageA(hwndRichEdit, WM_GETTEXT, 1024, (LPARAM)buffer);
+ todo_wine ok(!strcmp(buffer, "TestSomeText"), "WM_GETTEXT returned incorrect string\n");
+
+ SendMessageA(hwndRichEdit, WM_SETTEXT, 0, (LPARAM)"Wine");
+ SendMessageA(hwndRichEdit, EM_SETSEL, 1, 2);
+ todo_wine r = SendMessageA(hwndRichEdit, EM_REPLACESEL, 0, (LPARAM)rtfstream);
+ todo_wine ok(r == 12, "EM_REPLACESEL returned %d, expected 12\n", r);
+ r = SendMessageA(hwndRichEdit, EM_EXGETSEL, 0, (LPARAM)&cr);
+ ok(0 == r, "EM_EXGETSEL returned %d, expected 0\n", r);
+ todo_wine ok(cr.cpMin == 13, "EM_EXGETSEL returned cpMin=%d, expected 13\n", cr.cpMin);
+ todo_wine ok(cr.cpMax == 13, "EM_EXGETSEL returned cpMax=%d, expected 13\n", cr.cpMax);
+ SendMessageA(hwndRichEdit, WM_GETTEXT, 1024, (LPARAM)buffer);
+ todo_wine ok(!strcmp(buffer, "WTestSomeTextne"), "WM_GETTEXT returned incorrect string\n");
+
+ SendMessageA(hwndRichEdit, WM_SETTEXT, 0, (LPARAM)"{\\rtf1 Wine}");
+ SendMessageA(hwndRichEdit, EM_SETSEL, 1, 2);
+ todo_wine r = SendMessageA(hwndRichEdit, EM_REPLACESEL, 0, (LPARAM)rtfstream);
+ todo_wine ok(r == 12, "EM_REPLACESEL returned %d, expected 12\n", r);
+ r = SendMessageA(hwndRichEdit, EM_EXGETSEL, 0, (LPARAM)&cr);
+ ok(0 == r, "EM_EXGETSEL returned %d, expected 0\n", r);
+ todo_wine ok(cr.cpMin == 13, "EM_EXGETSEL returned cpMin=%d, expected 13\n", cr.cpMin);
+ todo_wine ok(cr.cpMax == 13, "EM_EXGETSEL returned cpMax=%d, expected 13\n", cr.cpMax);
+ SendMessageA(hwndRichEdit, WM_GETTEXT, 1024, (LPARAM)buffer);
+ todo_wine ok(!strcmp(buffer, "WTestSomeTextne"), "WM_GETTEXT returned incorrect string\n");
+
if (!redraw)
/* This is needed to avoid interferring with keybd_event calls
* on other tests that simulate keyboard events. */
More information about the wine-cvs
mailing list