[gtksourceview/wip/search] search: one more unit test, and fix it



commit a0adb9145f747b1890edc2da56182377ab454a62
Author: Sébastien Wilmet <swilmet gnome org>
Date:   Sun Jun 23 14:01:19 2013 +0200

    search: one more unit test, and fix it

 gtksourceview/gtksourcesearch.c |    3 +++
 tests/test-search.c             |   13 +++++++++++++
 2 files changed, 16 insertions(+), 0 deletions(-)
---
diff --git a/gtksourceview/gtksourcesearch.c b/gtksourceview/gtksourcesearch.c
index c701922..dc4ab25 100644
--- a/gtksourceview/gtksourcesearch.c
+++ b/gtksourceview/gtksourcesearch.c
@@ -828,6 +828,9 @@ delete_range_before_cb (GtkSourceSearch *search,
                GtkTextIter start = *delete_start;
                GtkTextIter end = *delete_end;
 
+               gtk_text_iter_backward_lines (&start, search->priv->text_nb_lines);
+               gtk_text_iter_forward_lines (&end, search->priv->text_nb_lines);
+
                remove_occurrences_in_range (search, &start, &end);
                add_subregion_to_scan (search, &start, &end);
        }
diff --git a/tests/test-search.c b/tests/test-search.c
index f0ee70d..fe25417 100644
--- a/tests/test-search.c
+++ b/tests/test-search.c
@@ -208,6 +208,19 @@ test_occurrences_count_with_delete (void)
        occurrences_count = gtk_source_buffer_get_search_occurrences_count (source_buffer);
        g_assert_cmpuint (occurrences_count, ==, 1);
 
+       /* Contents: "foto" -> "foo" */
+       gtk_text_buffer_set_text (text_buffer, "foto", -1);
+       flush_queue ();
+       occurrences_count = gtk_source_buffer_get_search_occurrences_count (source_buffer);
+       g_assert_cmpuint (occurrences_count, ==, 0);
+
+       gtk_text_buffer_get_iter_at_offset (text_buffer, &start, 2);
+       gtk_text_buffer_get_iter_at_offset (text_buffer, &end, 3);
+       gtk_text_buffer_delete (text_buffer, &start, &end);
+       flush_queue ();
+       occurrences_count = gtk_source_buffer_get_search_occurrences_count (source_buffer);
+       g_assert_cmpuint (occurrences_count, ==, 1);
+
        g_object_unref (source_buffer);
 }
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]