[gtk/matthiasc/for-main: 2/2] sortlistmodel: Add a test




commit 2ed954d3076daa8bda7b21a1667db62665d3d07c
Author: Matthias Clasen <mclasen redhat com>
Date:   Sun Jul 17 06:22:55 2022 -0400

    sortlistmodel: Add a test
    
    Add  a test to prove that additions and removals
    in the underlying model show up as expected.

 testsuite/gtk/sortlistmodel.c | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)
---
diff --git a/testsuite/gtk/sortlistmodel.c b/testsuite/gtk/sortlistmodel.c
index fa8915df8f..454cae32e1 100644
--- a/testsuite/gtk/sortlistmodel.c
+++ b/testsuite/gtk/sortlistmodel.c
@@ -543,6 +543,29 @@ test_out_of_bounds_access (void)
   g_object_unref (sort);
 }
 
+static void
+test_add_remove_item (void)
+{
+  GtkSortListModel *sort;
+  GListStore *store;
+
+  store = new_store ((guint[]) { 4, 8, 2, 6, 10, 0 });
+  sort = new_model (store);
+  assert_model (sort, "2 4 6 8 10");
+  assert_changes (sort, "");
+
+  add (store, 3);
+  assert_model (sort, "2 3 4 6 8 10");
+  assert_changes (sort, "+1*");
+
+  g_list_store_remove (store, 5);
+  assert_model (sort, "2 4 6 8 10");
+  assert_changes (sort, "-1*");
+
+  g_object_unref (store);
+  g_object_unref (sort);
+}
+
 int
 main (int argc, char *argv[])
 {
@@ -563,6 +586,7 @@ main (int argc, char *argv[])
   g_test_add_func ("/sortlistmodel/stability", test_stability);
   g_test_add_func ("/sortlistmodel/incremental/remove", test_incremental_remove);
   g_test_add_func ("/sortlistmodel/oob-access", test_out_of_bounds_access);
+  g_test_add_func ("/sortlistmodel/add-remove-item", test_add_remove_item);
 
   return g_test_run ();
 }


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