Author: akhaldi
Date: Mon Apr 6 17:56:33 2015
New Revision: 67076
URL:
http://svn.reactos.org/svn/reactos?rev=67076&view=rev
Log:
[RICHED20_WINETEST] EM_SETSEL tests. Addendum to r67074. By Christoph von Wittich.
Modified:
trunk/rostests/winetests/riched20/editor.c
Modified: trunk/rostests/winetests/riched20/editor.c
URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/riched20/editor…
==============================================================================
--- trunk/rostests/winetests/riched20/editor.c [iso-8859-1] (original)
+++ trunk/rostests/winetests/riched20/editor.c [iso-8859-1] Mon Apr 6 17:56:33 2015
@@ -4422,6 +4422,43 @@
DestroyWindow(hwndRichEdit);
}
+static void check_EM_SETSEL(HWND hwnd, const struct exsetsel_s *setsel, int id) {
+ LRESULT result;
+ int start, end;
+
+ result = SendMessageA(hwnd, EM_SETSEL, setsel->min, setsel->max);
+
+ ok(result == setsel->expected_retval, "EM_SETSEL(%d): expected: %ld actual:
%ld\n", id, setsel->expected_retval, result);
+
+ SendMessageA(hwnd, EM_GETSEL, (WPARAM)&start, (LPARAM)&end);
+
+ if (setsel->_getsel_todo_wine) {
+ todo_wine {
+ ok(start == setsel->expected_getsel_start && end ==
setsel->expected_getsel_end, "EM_SETSEL(%d): expected (%d,%d)
actual:(%d,%d)\n", id, setsel->expected_getsel_start,
setsel->expected_getsel_end, start, end);
+ }
+ } else {
+ ok(start == setsel->expected_getsel_start && end ==
setsel->expected_getsel_end, "EM_SETSEL(%d): expected (%d,%d)
actual:(%d,%d)\n", id, setsel->expected_getsel_start,
setsel->expected_getsel_end, start, end);
+ }
+}
+
+static void test_EM_SETSEL(void)
+{
+ HWND hwndRichEdit = new_richedit(NULL);
+ int i;
+ const int num_tests = sizeof(exsetsel_tests)/sizeof(struct exsetsel_s);
+
+ /* sending some text to the window */
+ SendMessageA(hwndRichEdit, WM_SETTEXT, 0, (LPARAM)"testing selection");
+ /* 01234567890123456*/
+ /* 10 */
+
+ for (i = 0; i < num_tests; i++) {
+ check_EM_SETSEL(hwndRichEdit, &exsetsel_tests[i], i);
+ }
+
+ DestroyWindow(hwndRichEdit);
+}
+
static void test_EM_REPLACESEL(int redraw)
{
HWND hwndRichEdit = new_richedit(NULL);
@@ -7626,6 +7663,7 @@
test_EM_GETLIMITTEXT();
test_WM_SETFONT();
test_EM_GETMODIFY();
+ test_EM_SETSEL();
test_EM_EXSETSEL();
test_WM_PASTE();
test_EM_STREAMIN();