From: Christian Hergert Date: Sun, 26 Dec 2021 20:46:16 +0000 (-0800) Subject: testsuite: add failing test for delete selection X-Git-Tag: archive/raspbian/4.6.5+ds-1+rpi1~1^2~19^2~5^2~3^2~2 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=99d8dd751e74bd383c7c0cc775cc6cd3ff2080ea;p=gtk4.git testsuite: add failing test for delete selection This adds a test to expose the failure of #4575 which results in the selection being incorrect when performing a delete as we are likely already in a begin_user_action()/end_user_action() pair. Related #4575 --- diff --git a/testsuite/gtk/texthistory.c b/testsuite/gtk/texthistory.c index 4da0dc5ab0..933c8611e9 100644 --- a/testsuite/gtk/texthistory.c +++ b/testsuite/gtk/texthistory.c @@ -619,6 +619,22 @@ test_issue_4276 (void) run_test (commands, G_N_ELEMENTS (commands), 0); } +static void +test_issue_4575 (void) +{ + const Command commands[] = { + { INSERT, 0, -1, "this is some text", "this is some text", SET, UNSET, UNSET }, + { SELECT, 5, 8, NULL, NULL, SET, UNSET, UNSET }, + { BEGIN_USER, -1, -1, NULL, NULL, UNSET, UNSET, UNSET }, + { DELETE_KEY, 5, 8, "is ", "this some text", UNSET, UNSET, UNSET, IGNORE_SELECT }, + { END_USER, -1, -1, NULL, NULL, SET, UNSET, UNSET }, + { UNDO, -1, -1, NULL, "this is some text", SET, SET, UNSET }, + { CHECK_SELECT, 5, 8, NULL, "this is some text", SET, SET, UNSET }, + }; + + run_test (commands, G_N_ELEMENTS (commands), 0); +} + int main (int argc, char *argv[]) @@ -640,6 +656,7 @@ main (int argc, g_test_add_func ("/Gtk/TextHistory/test13", test13); g_test_add_func ("/Gtk/TextHistory/test14", test14); g_test_add_func ("/Gtk/TextHistory/issue_4276", test_issue_4276); + g_test_add_func ("/Gtk/TextHistory/issue_4575", test_issue_4575); return g_test_run (); }