summaryrefslogtreecommitdiff
path: root/tests/libtracker-sparql
diff options
context:
space:
mode:
authorSam Thursfield <sam@afuera.me.uk>2018-07-16 14:07:03 +0200
committerSam Thursfield <sam@afuera.me.uk>2018-07-16 16:26:32 +0200
commit369dc65484be10c0eda4936347dc90b86f94c494 (patch)
tree7a8b913f2ccdee64f05edfb41ec784b6922867b8 /tests/libtracker-sparql
parent535b843d272d88c584fed026cd9754a7d68511f4 (diff)
downloadtracker-369dc65484be10c0eda4936347dc90b86f94c494.tar.gz
tests: Turn gb-737023 test into a functional-test
This is really testing the IPC methods, so it should go with the other IPC tests which talk to a real tracker-store instance. Now the test is isolated from the user's real data, as it runs through the functional test-runner.sh script. It does still use the tracker-store from the system rather than the one we just built though, more work is needed there. The test sometimes fails due to the tracker-store disconnecting from it and GDBus triggering a SIGTERM due to the exit-on-close option being enabled on the GDBusConnection. I'm not sure how to fix that, there is an open bug here: https://gitlab.gnome.org/GNOME/tracker/issues/18
Diffstat (limited to 'tests/libtracker-sparql')
-rw-r--r--tests/libtracker-sparql/Makefile.am3
-rw-r--r--tests/libtracker-sparql/meson.build1
-rw-r--r--tests/libtracker-sparql/tracker-gb-737023-test.c113
3 files changed, 1 insertions, 116 deletions
diff --git a/tests/libtracker-sparql/Makefile.am b/tests/libtracker-sparql/Makefile.am
index 21ecca866..56f9349b5 100644
--- a/tests/libtracker-sparql/Makefile.am
+++ b/tests/libtracker-sparql/Makefile.am
@@ -4,8 +4,7 @@ noinst_PROGRAMS += $(test_programs)
test_programs = \
tracker-resource-test \
- tracker-sparql-test \
- tracker-gb-737023-test
+ tracker-sparql-test
AM_CPPFLAGS = \
$(BUILD_CFLAGS) \
diff --git a/tests/libtracker-sparql/meson.build b/tests/libtracker-sparql/meson.build
index 00a92dd25..49b28bc98 100644
--- a/tests/libtracker-sparql/meson.build
+++ b/tests/libtracker-sparql/meson.build
@@ -1,5 +1,4 @@
libtracker_sparql_tests = [
- 'gb-737023',
'resource',
'sparql',
]
diff --git a/tests/libtracker-sparql/tracker-gb-737023-test.c b/tests/libtracker-sparql/tracker-gb-737023-test.c
deleted file mode 100644
index 0955ffc25..000000000
--- a/tests/libtracker-sparql/tracker-gb-737023-test.c
+++ /dev/null
@@ -1,113 +0,0 @@
-/*
- * Copyright (C) 2014, Red Hat, Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- */
-
-#include <locale.h>
-
-#include <gio/gio.h>
-
-#include <libtracker-sparql/tracker-sparql.h>
-
-static void
-query_cb (GObject *source_object, GAsyncResult *res, gpointer user_data)
-{
- GCancellable *cancellable;
- GError *error = NULL;
- TrackerSparqlConnection *conn = TRACKER_SPARQL_CONNECTION (source_object);
- TrackerSparqlCursor *cursor = NULL;
-
- cursor = tracker_sparql_connection_query_finish (conn, res, &error);
- if (error != NULL) {
- g_error_free (error);
- }
-
- cancellable = g_cancellable_new ();
- tracker_sparql_connection_query_async (conn,
- "SELECT ?urn WHERE {?urn a rdfs:Resource}",
- cancellable,
- query_cb,
- NULL);
- g_cancellable_cancel (cancellable);
-
- g_object_unref (cancellable);
- g_clear_object (&cursor);
-}
-
-static gboolean
-quit_cb (gpointer user_data)
-{
- g_main_loop_quit ((GMainLoop *) user_data);
- return G_SOURCE_REMOVE;
-}
-
-static void
-test_tracker_sparql_gb737023 (void)
-{
- GCancellable *cancellable;
- GError *error = NULL;
- GMainLoop *loop;
- TrackerSparqlConnection *conn;
-
- g_test_bug_base ("https://bugzilla.gnome.org/show_bug.cgi?id=");
- g_test_bug ("737023");
-
- g_setenv ("TRACKER_SPARQL_BACKEND", "bus", TRUE);
- conn = tracker_sparql_connection_get (NULL, &error);
- g_assert_no_error (error);
-
- loop = g_main_loop_new (NULL, FALSE);
-
- /* This should be enough. */
- g_timeout_add_seconds_full (G_PRIORITY_DEFAULT,
- 2,
- quit_cb,
- loop,
- (GDestroyNotify) g_main_loop_unref);
-
- cancellable = g_cancellable_new ();
- tracker_sparql_connection_query_async (conn,
- "SELECT ?urn WHERE {?urn a rdfs:Resource}",
- cancellable,
- query_cb,
- NULL);
- g_cancellable_cancel (cancellable);
- g_main_loop_run (loop);
-
- g_object_unref (cancellable);
- g_object_unref (conn);
-}
-
-gint
-main (gint argc, gchar **argv)
-{
- gint result;
-
- setlocale (LC_ALL, "");
-
- g_setenv ("TRACKER_TEST_DOMAIN_ONTOLOGY_RULE", TEST_DOMAIN_ONTOLOGY_RULE, TRUE);
- g_setenv ("TRACKER_DB_ONTOLOGIES_DIR", TEST_ONTOLOGIES_DIR, TRUE);
-
- g_test_init (&argc, &argv, NULL);
-
- g_test_add_func ("/libtracker-sparql/tracker/gb737023",
- test_tracker_sparql_gb737023);
-
- result = g_test_run ();
-
- return result;
-}