[libgda] Added new UI test for data models with errors



commit 3a9c84196613d83436172dcc601b5761c10537a9
Author: Vivien Malerba <malerba gnome-db org>
Date:   Sun Jan 24 16:04:42 2010 +0100

    Added new UI test for data models with errors

 testing/.gitignore           |    1 +
 testing/Makefile.am          |   13 +++++++++-
 testing/gdaui-test-errors.c  |   56 ++++++++++++++++++++++++++++++++++++++++++
 tests/data-models/.gitignore |    3 +-
 4 files changed, 71 insertions(+), 2 deletions(-)
---
diff --git a/testing/.gitignore b/testing/.gitignore
index 9fe6261..0ac7eb0 100644
--- a/testing/.gitignore
+++ b/testing/.gitignore
@@ -3,4 +3,5 @@ gda-test-blob
 gda-provider-status
 gdaui-test-data-entries
 gdaui-test-widget-entry
+gdaui-test-errors
 index.html
diff --git a/testing/Makefile.am b/testing/Makefile.am
index ebcd1d5..5770bf2 100644
--- a/testing/Makefile.am
+++ b/testing/Makefile.am
@@ -6,7 +6,7 @@ AM_CPPFLAGS = \
 
 bin_PROGRAMS = gda-test-connection-4.0
 if HAVE_UI
-UI_PROGS=gdaui-test-data-entries gdaui-test-widget-entry
+UI_PROGS=gdaui-test-data-entries gdaui-test-widget-entry gdaui-test-errors
 endif
 noinst_PROGRAMS = gda-test-blob gda-provider-status $(UI_PROGS)
 
@@ -53,4 +53,15 @@ gdaui_test_widget_entry_LDADD = \
         $(top_builddir)/libgda-ui/libgda-ui-4.0.la \
         $(LIBGDA_LIBS)
 
+gdaui_test_errors_CFLAGS = $(GTK_CFLAGS)
+gdaui_test_errors_SOURCES = \
+        gdaui-test-errors.c
+
+gdaui_test_errors_LDADD = \
+        $(top_builddir)/libgda/libgda-4.0.la \
+        $(top_builddir)/libgda-ui/libgda-ui-4.0.la \
+	$(top_builddir)/tests/libgda-test-4.0.la \
+        $(LIBGDA_LIBS)
+
+
 EXTRA_DIST = 
diff --git a/testing/gdaui-test-errors.c b/testing/gdaui-test-errors.c
new file mode 100644
index 0000000..68d97a0
--- /dev/null
+++ b/testing/gdaui-test-errors.c
@@ -0,0 +1,56 @@
+#include <libgda-ui/libgda-ui.h>
+#include "../tests/data-model-errors.h"
+
+static void destroy (GtkWidget *widget, gpointer data)
+{
+	gtk_main_quit ();
+}
+
+int
+main (int argc, char *argv[])
+{
+	gtk_init (&argc, &argv);
+	gdaui_init ();
+
+	/* create data model */
+	GdaDataModel *model; 
+        model = data_model_errors_new ();
+	gda_data_model_dump (model, NULL);
+	
+	/* create UI */
+	GtkWidget *window, *vbox, *button, *form;
+	window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+        gtk_window_set_default_size (GTK_WINDOW(window), 400, 200);
+	g_signal_connect_swapped (window, "destroy",
+				  G_CALLBACK (destroy),
+				  window);
+	gtk_container_set_border_width (GTK_CONTAINER (window), 10);
+
+	vbox = gtk_vbox_new (FALSE, 5);
+	gtk_container_add (GTK_CONTAINER (window), vbox);
+
+	/* main form to list customers */
+	form = gdaui_form_new (model);
+	g_object_unref (model);
+	gtk_box_pack_start (GTK_BOX (vbox), form, TRUE, TRUE, 0);
+
+        g_object_set (G_OBJECT (form),
+		      "info-flags",
+		      GDAUI_DATA_PROXY_INFO_CURRENT_ROW |
+		      GDAUI_DATA_PROXY_INFO_ROW_MOVE_BUTTONS |
+		      GDAUI_DATA_PROXY_INFO_ROW_MODIFY_BUTTONS,
+		      NULL
+		      );
+
+	/* button to quit */
+	button = gtk_button_new_with_label ("Quit");
+	gtk_box_pack_start (GTK_BOX (vbox), button, FALSE, FALSE, 0);
+	g_signal_connect_swapped (button, "clicked",
+				  G_CALLBACK (gtk_widget_destroy),
+				  window);
+
+	gtk_widget_show_all (window);
+	gtk_main ();
+
+        return 0;
+}
diff --git a/tests/data-models/.gitignore b/tests/data-models/.gitignore
index d83ebbd..f21f8d3 100644
--- a/tests/data-models/.gitignore
+++ b/tests/data-models/.gitignore
@@ -4,4 +4,5 @@ check_data_proxy
 check_model_copy
 check_pmodel
 check_empty_rs
-*.db
\ No newline at end of file
+check_model_errors
+*.db



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