[gtksourceview/wip/search] search: more unit tests (that don't pass)



commit 5bcd3ad410f2c0df1a7e3ba818d02504e9223e78
Author: Sébastien Wilmet <swilmet gnome org>
Date:   Sat Jun 22 16:13:13 2013 +0200

    search: more unit tests (that don't pass)

 tests/test-search.c |   61 ++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 56 insertions(+), 5 deletions(-)
---
diff --git a/tests/test-search.c b/tests/test-search.c
index 20851b7..35db759 100644
--- a/tests/test-search.c
+++ b/tests/test-search.c
@@ -43,43 +43,94 @@ test_occurrences_count_simple (void)
        gtk_text_buffer_get_start_iter (GTK_TEXT_BUFFER (buffer), &iter);
        gtk_text_buffer_insert (GTK_TEXT_BUFFER (buffer), &iter, "Some foo\nSome bar\n", -1);
        flush_queue ();
-
        occurrences_count = gtk_source_buffer_get_search_occurrences_count (buffer);
        g_assert_cmpuint (occurrences_count, ==, 0);
 
        gtk_source_buffer_set_search_text (buffer, "world");
        flush_queue ();
-
        occurrences_count = gtk_source_buffer_get_search_occurrences_count (buffer);
        g_assert_cmpuint (occurrences_count, ==, 0);
 
        gtk_source_buffer_set_search_text (buffer, "Some");
        flush_queue ();
-
        occurrences_count = gtk_source_buffer_get_search_occurrences_count (buffer);
        g_assert_cmpuint (occurrences_count, ==, 2);
 
        gtk_source_buffer_set_search_text (buffer, "foo");
        flush_queue ();
-
        occurrences_count = gtk_source_buffer_get_search_occurrences_count (buffer);
        g_assert_cmpuint (occurrences_count, ==, 1);
 
        gtk_source_buffer_set_search_text (buffer, "world");
        flush_queue ();
-
        occurrences_count = gtk_source_buffer_get_search_occurrences_count (buffer);
        g_assert_cmpuint (occurrences_count, ==, 0);
 
        g_object_unref (buffer);
 }
 
+static void
+test_occurrences_count_with_insert (void)
+{
+       GtkSourceBuffer *source_buffer = gtk_source_buffer_new (NULL);
+       GtkTextBuffer *text_buffer = GTK_TEXT_BUFFER (source_buffer);
+       GtkTextIter iter;
+       guint occurrences_count;
+
+       /* Contents: "foobar" */
+       gtk_text_buffer_get_start_iter (text_buffer, &iter);
+       gtk_text_buffer_insert (text_buffer, &iter, "foobar", -1);
+
+       gtk_source_buffer_set_search_text (source_buffer, "foo");
+       flush_queue ();
+       occurrences_count = gtk_source_buffer_get_search_occurrences_count (source_buffer);
+       g_assert_cmpuint (occurrences_count, ==, 1);
+
+       /* Contents: "foobar " */
+       gtk_text_buffer_get_end_iter (text_buffer, &iter);
+       gtk_text_buffer_insert (text_buffer, &iter, " ", -1);
+       flush_queue ();
+       occurrences_count = gtk_source_buffer_get_search_occurrences_count (source_buffer);
+       g_assert_cmpuint (occurrences_count, ==, 1);
+
+       /* Contents: "foobar foobeer" */
+       gtk_text_buffer_get_end_iter (text_buffer, &iter);
+       gtk_text_buffer_insert (text_buffer, &iter, "foobeer", -1);
+       flush_queue ();
+       occurrences_count = gtk_source_buffer_get_search_occurrences_count (source_buffer);
+       g_assert_cmpuint (occurrences_count, ==, 2);
+
+       /* Contents: "foo bar foobeer" */
+       gtk_text_buffer_get_iter_at_offset (text_buffer, &iter, 3);
+       gtk_text_buffer_insert (text_buffer, &iter, " ", -1);
+       flush_queue ();
+       occurrences_count = gtk_source_buffer_get_search_occurrences_count (source_buffer);
+       g_assert_cmpuint (occurrences_count, ==, 2);
+
+       /* Contents: "foto bar foobeer" */
+       gtk_text_buffer_get_iter_at_offset (text_buffer, &iter, 2);
+       gtk_text_buffer_insert (text_buffer, &iter, "t", -1);
+       flush_queue ();
+       occurrences_count = gtk_source_buffer_get_search_occurrences_count (source_buffer);
+       g_assert_cmpuint (occurrences_count, ==, 1);
+
+       /* Contents: "footo bar foobeer" */
+       gtk_text_buffer_get_iter_at_offset (text_buffer, &iter, 2);
+       gtk_text_buffer_insert (text_buffer, &iter, "o", -1);
+       flush_queue ();
+       occurrences_count = gtk_source_buffer_get_search_occurrences_count (source_buffer);
+       g_assert_cmpuint (occurrences_count, ==, 2);
+
+       g_object_unref (source_buffer);
+}
+
 int
 main (int argc, char **argv)
 {
        gtk_test_init (&argc, &argv);
 
        g_test_add_func ("/Search/occurrences-count/simple", test_occurrences_count_simple);
+       g_test_add_func ("/Search/occurrences-count/with-insert", test_occurrences_count_with_insert);
 
        return g_test_run ();
 }


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