[libgda] Adding test for unsupported operation
- From: Pavlo Solntsev <psolntsev src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [libgda] Adding test for unsupported operation
- Date: Sun, 12 Jul 2020 03:39:53 +0000 (UTC)
commit 586f0425abf95414977f1d20d2738d3b825e9f62
Author: Pavlo Solntsev <p sun fun gmail com>
Date: Thu May 28 13:05:33 2020 -0500
Adding test for unsupported operation
SQLite3 doesn't support DROP operation for a column.
tests/test-server-operation-sqlite.c | 63 ++++++++++++++++++++++++++++++++++++
1 file changed, 63 insertions(+)
---
diff --git a/tests/test-server-operation-sqlite.c b/tests/test-server-operation-sqlite.c
index 25bccf838..f7e6ca562 100644
--- a/tests/test-server-operation-sqlite.c
+++ b/tests/test-server-operation-sqlite.c
@@ -1054,6 +1054,62 @@ test_server_operation_operations_db_rename_column (TestObjectFixture *fixture,
g_object_unref (tproject);
}
+static void
+test_server_operation_operations_db_unsupported (TestObjectFixture *fixture,
+ G_GNUC_UNUSED gconstpointer user_data)
+{
+
+/* Define table Project */
+ GdaDbTable *tproject = gda_db_table_new ();
+ gda_db_base_set_name (GDA_DB_BASE (tproject), "Project");
+ gda_db_table_set_is_temp (tproject, FALSE);
+
+ /* Defining column id */
+ GdaDbColumn *pid = gda_db_column_new ();
+ gda_db_column_set_name (pid, "id");
+ gda_db_column_set_type (pid, G_TYPE_INT);
+ gda_db_column_set_nnul (pid, TRUE);
+ gda_db_column_set_autoinc (pid, TRUE);
+ gda_db_column_set_unique (pid, TRUE);
+ gda_db_column_set_pkey (pid, TRUE);
+
+ gda_db_table_append_column (tproject, pid);
+
+ g_object_unref (pid);
+
+ /* Defining column name */
+ GdaDbColumn *pname = gda_db_column_new ();
+ gda_db_column_set_name (pname, "name");
+ gda_db_column_set_type (pname, G_TYPE_STRING);
+ gda_db_column_set_size (pname, 50);
+ gda_db_column_set_nnul (pname, TRUE);
+ gda_db_column_set_autoinc (pname, FALSE);
+ gda_db_column_set_unique (pname, TRUE);
+ gda_db_column_set_pkey (pname, FALSE);
+ gda_db_column_set_default (pname, "Default_name");
+
+ gda_db_table_append_column (tproject, pname);
+
+ g_object_unref (pname);
+
+/* Create table */
+ gboolean res = gda_ddl_modifiable_create (GDA_DDL_MODIFIABLE (tproject), fixture->cnc, NULL, NULL);
+
+ g_assert_true (res);
+
+ GError *error = NULL;
+ res = gda_ddl_modifiable_drop (GDA_DDL_MODIFIABLE (pname), fixture->cnc, tproject, &error);
+
+ if (error != NULL) {
+ g_print ("Error: %s\n", error->message != NULL ? error->message : "No detail");
+ g_clear_error (&error);
+ }
+
+ g_assert_false (res);
+
+ g_object_unref (tproject);
+}
+
gint
main(gint argc, gchar *argv[])
{
@@ -1081,6 +1137,13 @@ main(gint argc, gchar *argv[])
test_server_operation_start,
test_server_operation_operations_db_rename_column,
test_server_operation_finish);
+
+ g_test_add ("/test-server-operation-sqlite/gda-db-unsupported",
+ TestObjectFixture,
+ NULL,
+ test_server_operation_start,
+ test_server_operation_operations_db_unsupported,
+ test_server_operation_finish);
return g_test_run();
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]