[glom] Add --enable-ui-tests.



commit cf1f50cff154eedeec4040d0fb1f86f1d3ae26b8
Author: Murray Cumming <murrayc murrayc com>
Date:   Fri Nov 2 13:56:48 2012 +0100

    Add --enable-ui-tests.
    
    * configure.ac, Makefile_tests.am:
    Allow the tests that actually instantiate windows to
    be disabled, for running under headless continuous
    integration systems.

 ChangeLog         |    9 +++++++++
 Makefile_tests.am |   16 ++++++++++++----
 configure.ac      |    9 ++++++++-
 3 files changed, 29 insertions(+), 5 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index f0177ed..c3dd801 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,14 @@
 2012-11-02  Murray Cumming  <murrayc murrayc com>
 
+        Add --enable-ui-tests.
+
+	* configure.ac, Makefile_tests.am:
+	Allow the tests that actually instantiate windows to 
+	be disabled, for running under headless continuous
+	integration systems.
+
+2012-11-02  Murray Cumming  <murrayc murrayc com>
+
         Self hosting: Do not allow ident authorization.
 
         * glom/libglom/connectionpool_backends/postgres_self.cc:
diff --git a/Makefile_tests.am b/Makefile_tests.am
index b1aaaef..5dff256 100644
--- a/Makefile_tests.am
+++ b/Makefile_tests.am
@@ -290,8 +290,8 @@ tests_test_selfhosting_sqlinjection_SOURCES = tests/test_selfhosting_sqlinjectio
 tests_test_selfhosting_sqlinjection_LDADD = $(tests_ldadd)
 tests_test_selfhosting_sqlinjection_CPPFLAGS = $(tests_cppflags)
 
-# UI Tests:
-
+# Tests of code used by the application,
+# and not just the library or the command-line utilities.
 if GLOM_ENABLE_UI
 
 # TODO: Shouldn't test_pyembed be non-UI?
@@ -310,10 +310,9 @@ check_PROGRAMS += \
 	tests/test_iso_codes
 #	glom/mode_data/test_flowtablewithfields
 #	glom/utility_widgets/canvas/test_canvas_editable
+
 	
 TESTS += \
-	tests/test_glade_toplevels_instantiation.sh \
-	tests/test_glade_derived_instantiation \
 	tests/python/test_python_execute_func \
 	tests/python/test_python_execute_func_bad_syntax \
 	tests/python/test_python_execute_func_date \
@@ -322,6 +321,15 @@ TESTS += \
 	tests/python/test_python_execute_script \
 	tests/test_iso_codes
 
+# Some continuous-integration systems won't have an X server,
+# so they will want to disable these in configure.
+if GLOM_ENABLE_UI_TESTS
+TESTS += \
+	tests/test_glade_toplevels_instantiation.sh \
+	tests/test_glade_derived_instantiation
+endif #GLOM_ENABLE_UI_TESTS
+
+
 glom_utility_widgets_test_flowtable_SOURCES =	\
 	glom/utility_widgets/flowtable.cc	\
 	glom/utility_widgets/flowtable.h	\
diff --git a/configure.ac b/configure.ac
index 8d94fce..69deb99 100644
--- a/configure.ac
+++ b/configure.ac
@@ -84,7 +84,7 @@ AM_CONDITIONAL([HOST_WIN32], [test "x$glom_host_win32" = xyes])
 
 AC_ARG_ENABLE([glom-ui],
               [AS_HELP_STRING([--enable-glom-ui],
-                              [build the glom UI application instead of just libglom [default=yes]])],
+                              [build the glom UI application instead of just libglom. The command-line utilities are always built. [default=yes]])],
               [glom_enable_ui=$enableval],
               [glom_enable_ui=yes])
 AM_CONDITIONAL([GLOM_ENABLE_UI], [test "x$glom_enable_ui" = xyes])
@@ -103,6 +103,13 @@ AS_IF([test "x$glom_enable_client_only" = xyes],
          AC_DEFINE([GLOM_ENABLE_CLIENT_ONLY], [1],
                  [Define to disable support for self-hosting and developer mode.])])
 
+AC_ARG_ENABLE([ui-tests],
+              [AS_HELP_STRING([--enable-ui-tests],
+                              [Run UI tests during make check. [default=yes]])],
+              [glom_enable_ui_tests=$enableval],
+              [glom_enable_ui_tests=yes])
+AM_CONDITIONAL([GLOM_ENABLE_UI_TESTS], [test "x$glom_enable_ui_tests" = xyes])
+
 AC_ARG_ENABLE([sqlite],
               [AS_HELP_STRING([--enable-sqlite],
                               [Allow creation of SQLite databases and opening



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