diff options
author | Havoc Pennington <hp@redhat.com> | 2001-10-02 19:40:54 +0000 |
---|---|---|
committer | Havoc Pennington <hp@src.gnome.org> | 2001-10-02 19:40:54 +0000 |
commit | 230b35251a4ad7c2372aad8e16d5eb545f7f980d (patch) | |
tree | 387916db1a3cd0562cb32d186d5e4c5cc182bb6f /tests | |
parent | ced4124efe73184a02b012a7e5e9fa173dcdc90f (diff) | |
download | gtk+-230b35251a4ad7c2372aad8e16d5eb545f7f980d.tar.gz |
docs
2001-10-02 Havoc Pennington <hp@redhat.com>
* gdk/x11/gdkwindow-x11.c: docs
* tests/testtextbuffer.c (logical_motion_tests): add sentence
boundary tests
2001-10-02 Havoc Pennington <hp@redhat.com>
* gtk/tree_widget.sgml: s/empahsis/emphasis/
* gtk/tmpl/gtkobject.sgml: update docs
Diffstat (limited to 'tests')
-rw-r--r-- | tests/testtextbuffer.c | 88 |
1 files changed, 82 insertions, 6 deletions
diff --git a/tests/testtextbuffer.c b/tests/testtextbuffer.c index 9f2d332d75..3c6e6f3db6 100644 --- a/tests/testtextbuffer.c +++ b/tests/testtextbuffer.c @@ -934,7 +934,7 @@ logical_motion_tests (void) expected[8] = 11; /* before 'x' */ expected[9] = 12; /* before 'y' */ expected[10] = 13; /* before 'z' */ - expected[11] = 14; /* after 'z' */ + expected[11] = 14; /* after 'z' (only matters going backward) */ expected_steps = 11; gtk_text_buffer_get_start_iter (buffer, &iter); @@ -951,17 +951,15 @@ logical_motion_tests (void) pos, expected[i]); } - /* g_print ("%d = %d\n", pos, expected[i]); */ - ++i; } while (gtk_text_iter_forward_cursor_position (&iter)); - if (i != expected_steps) - g_error ("Expected %d steps, there were actually %d\n", expected_steps, i); - if (!gtk_text_iter_is_end (&iter)) g_error ("Expected to stop at the end iterator\n"); + + if (i != expected_steps) + g_error ("Expected %d steps, there were actually %d\n", expected_steps, i); i = expected_steps; do @@ -987,6 +985,84 @@ logical_motion_tests (void) if (!gtk_text_iter_is_start (&iter)) g_error ("Expected to stop at the start iterator\n"); + + + /* Check sentence boundaries */ + + gtk_text_buffer_set_text (buffer, "Hi.\nHi. \nHi! Hi. Hi? Hi.", -1); + + memset (expected, 0, sizeof (expected)); + + expected[0] = 0; /* before first Hi */ + expected[1] = 3; /* After first . */ + expected[2] = 7; /* After second . */ + expected[3] = 12; /* After ! */ + expected[4] = 16; /* After third . */ + expected[5] = 20; /* After ? */ + + expected_steps = 6; + + gtk_text_buffer_get_start_iter (buffer, &iter); + i = 0; + do + { + int pos; + + pos = gtk_text_iter_get_offset (&iter); + + if (pos != expected[i]) + { + g_error ("Sentence position %d, expected %d", + pos, expected[i]); + } + + ++i; + } + while (gtk_text_iter_forward_sentence_end (&iter)); + + if (i != expected_steps) + g_error ("Expected %d steps, there were actually %d\n", expected_steps, i); + + if (!gtk_text_iter_is_end (&iter)) + g_error ("Expected to stop at the end iterator\n"); + + gtk_text_buffer_set_text (buffer, "Hi.\nHi. \nHi! Hi. Hi? Hi.", -1); + + memset (expected, 0, sizeof (expected)); + + expected[0] = 24; + expected[1] = 22; + expected[2] = 17; + expected[3] = 14; + expected[4] = 9; + expected[5] = 4; + expected[6] = 0; + + expected_steps = 7; + + gtk_text_buffer_get_end_iter (buffer, &iter); + i = 0; + do + { + int pos; + + pos = gtk_text_iter_get_offset (&iter); + + if (pos != expected[i]) + { + g_error ("Sentence position %d, expected %d", + pos, expected[i]); + } + + ++i; + } + while (gtk_text_iter_backward_sentence_start (&iter)); + + if (i != expected_steps) + g_error ("Expected %d steps, there were actually %d\n", expected_steps, i); + + if (gtk_text_iter_get_offset (&iter) != 0) + g_error ("Expected to stop at the start iterator\n"); g_print ("Logical motion tests passed\n"); |