[libgda] Unit Tests updates for providers * Added test to update meta using a context for each table in meta
- From: Daniel Espinosa Ortiz <despinosa src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [libgda] Unit Tests updates for providers * Added test to update meta using a context for each table in meta
- Date: Fri, 9 Mar 2012 17:46:39 +0000 (UTC)
commit 42cfaa6e0c540f36750c6365213a53ea6c716c9b
Author: Daniel Espinosa <despinosa src gnome org>
Date: Fri Mar 2 18:49:24 2012 -0600
Unit Tests updates for providers
* Added test to update meta using a context for each table in
meta definition
* Fixed a bug in unit test for PostgreSQL not reporting fails
tests/providers/check_postgres.c | 11 +++------
tests/providers/prov-test-common.c | 38 +++++++++++++++++++++++++++++++----
2 files changed, 37 insertions(+), 12 deletions(-)
---
diff --git a/tests/providers/check_postgres.c b/tests/providers/check_postgres.c
index d8613e5..7427465 100644
--- a/tests/providers/check_postgres.c
+++ b/tests/providers/check_postgres.c
@@ -39,7 +39,7 @@ main (int argc, char **argv)
g_warning ("Could not find provider information for %s", PROVIDER);
return EXIT_SUCCESS;
}
- g_print ("Provider now tested: %s\n", pinfo->id);
+ g_print ("============= Provider now testing: %s =============\n", pinfo->id);
number_failed = prov_test_common_setup ();
@@ -55,11 +55,8 @@ main (int argc, char **argv)
number_failed += prov_test_common_clean ();
}
- if (! params_provided)
- return EXIT_SUCCESS;
- else {
- g_print ("Test %s\n", (number_failed == 0) ? "Ok" : "failed");
- return (number_failed == 0) ? EXIT_SUCCESS : EXIT_FAILURE;
- }
+
+ g_print ("Test %s\n", (number_failed == 0) ? "Ok" : "failed");
+ return (number_failed == 0) ? EXIT_SUCCESS : EXIT_FAILURE;
}
diff --git a/tests/providers/prov-test-common.c b/tests/providers/prov-test-common.c
index 21be837..b1c29e35 100644
--- a/tests/providers/prov-test-common.c
+++ b/tests/providers/prov-test-common.c
@@ -188,7 +188,35 @@ prov_test_common_check_meta ()
number_failed++;
goto theend;
}
-
+ /* Update meta store by context */
+ GdaMetaContext *ctx;
+ ctx = gda_meta_context_new ();
+ gchar *meta_tables[] = {"_tables", "_attributes", "_information_schema_catalog_name",
+ "_schemata", "_builtin_data_types", "_udt", "_udt_columns",
+ "_enums", "_element_types", "_domains", "_views", "_collations",
+ "_character_sets", "_routines", "_triggers", "_columns",
+ "_table_constraints", "_referential_constraints",
+ "_key_column_usage", "__declared_fk", "_check_column_usage",
+ "_view_column_usage", "_domain_constraints", "_parameters",
+ "_routine_columns", "_table_indexes", "_index_column_usage",
+ ""};
+ for (i = 0; g_strcmp0 (meta_tables[i],"") != 0; i++) {
+ gda_meta_context_set_table (ctx, meta_tables[i]);
+#ifdef CHECK_EXTRA_INFO
+ g_print ("Updating the meta store for table '%s'\n", meta_tables[i]);
+#endif
+ if (! gda_connection_update_meta_store (cnc, ctx, &gerror)) {
+#ifdef CHECK_EXTRA_INFO
+ g_warning ("Can't update meta store ( on table %s): %s\n",
+ meta_tables[i], gerror && gerror->message ? gerror->message : "???");
+#endif
+ g_error_free (gerror);
+ number_failed++;
+ goto theend;
+ }
+ }
+ gda_meta_context_free (ctx);
+
for (i = 0, list = tables; list; i++, list = list->next) {
GdaDataModel *model;
gchar *tmp;
@@ -280,7 +308,7 @@ prov_test_common_check_meta_identifiers (gboolean case_sensitive, gboolean updat
operation = gda_server_provider_create_operation (provider, cnc,
GDA_SERVER_OPERATION_DROP_TABLE, NULL, &error);
g_assert (operation);
- gda_server_operation_set_value_at (operation, table_name, NULL, "/TABLE_DESC_P/TABLE_NAME");
+ gda_server_operation_set_value_at_path (operation, table_name, "/TABLE_DESC_P/TABLE_NAME", NULL);
gda_server_provider_perform_operation (provider, cnc, operation, NULL);
g_object_unref (operation);
@@ -396,9 +424,9 @@ prov_test_common_check_meta_identifiers (gboolean case_sensitive, gboolean updat
operation = gda_server_provider_create_operation (provider, cnc,
GDA_SERVER_OPERATION_ADD_COLUMN, NULL, &error);
g_assert (operation);
- gda_server_operation_set_value_at (operation, table_name, NULL, "/COLUMN_DEF_P/TABLE_NAME");
- gda_server_operation_set_value_at (operation, field_name, NULL, "/COLUMN_DEF_P/COLUMN_NAME");
- gda_server_operation_set_value_at (operation, "int", NULL, "/COLUMN_DEF_P/COLUMN_TYPE");
+ gda_server_operation_set_value_at_path (operation, table_name, "/COLUMN_DEF_P/TABLE_NAME", NULL);
+ gda_server_operation_set_value_at (operation, field_name, "/COLUMN_DEF_P/COLUMN_NAME", NULL);
+ gda_server_operation_set_value_at (operation, "int", "/COLUMN_DEF_P/COLUMN_TYPE", NULL);
if (! gda_server_provider_perform_operation (provider, cnc, operation, &error)) {
#ifdef CHECK_EXTRA_INFO
g_warning ("perform_operation(ADD_COLUMN) failed: %s\n", error && error->message ?
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]