[Libosinfo] [libosinfo PATCH 1/5] tests: Remove test-*.uris

Fabiano Fidêncio fidencio at redhat.com
Wed Mar 20 15:12:47 UTC 2019


Those tests are now part of osinfo-db.

With this change we can get rid of the curl dependency we have.

Signed-off-by: Fabiano Fidêncio <fidencio at redhat.com>
---
 README                   |   1 -
 configure.ac             |   8 ---
 libosinfo.spec.in        |   1 -
 tests/Makefile.am        |  26 +---------
 tests/test-imageuris.c   |  83 -----------------------------
 tests/test-mediauris.c   |  89 --------------------------------
 tests/test-treeuris.c    |  87 -------------------------------
 tests/test-uris-common.c | 109 ---------------------------------------
 tests/test-uris-common.h |  26 ----------
 9 files changed, 2 insertions(+), 428 deletions(-)
 delete mode 100644 tests/test-imageuris.c
 delete mode 100644 tests/test-mediauris.c
 delete mode 100644 tests/test-treeuris.c
 delete mode 100644 tests/test-uris-common.c
 delete mode 100644 tests/test-uris-common.h

diff --git a/README b/README
index e3d528c..7f73e74 100644
--- a/README
+++ b/README
@@ -26,7 +26,6 @@ Dependencies
 
 - Optional:
   - gobject-introspection
-  - libcurl (for tests only)
   - Vala (build-time only)
 
 Patch submissions
diff --git a/configure.ac b/configure.ac
index f4b4b71..4b0fd40 100644
--- a/configure.ac
+++ b/configure.ac
@@ -55,14 +55,6 @@ AC_ARG_ENABLE([tests],
         AS_HELP_STRING([--enable-tests], [enable test suite]),
         [], [enable_tests=yes])
 
-if test "x$enable_tests" != "xno" ; then
-  have_curl=no
-  PKG_CHECK_MODULES([CURL], [libcurl], [have_curl=yes], [:])
-  AC_SUBST(CURL_CFLAGS)
-  AC_SUBST(CURL_LIBS)
-fi
-AM_CONDITIONAL([HAVE_CURL],[test "x$have_curl" = "xyes"])
-
 AM_CONDITIONAL([ENABLE_TESTS],[test "x$enable_tests" = "xyes"])
 
 LIBOSINFO_MAJOR_VERSION=`echo $VERSION | awk -F. '{print $1}'`
diff --git a/libosinfo.spec.in b/libosinfo.spec.in
index 8c0cc03..79b58dd 100644
--- a/libosinfo.spec.in
+++ b/libosinfo.spec.in
@@ -14,7 +14,6 @@ BuildRequires: glib2-devel
 BuildRequires: libxml2-devel >= 2.6.0
 BuildRequires: libxslt-devel >= 1.0.0
 BuildRequires: vala
-BuildRequires: libcurl-devel
 BuildRequires: /usr/bin/pod2man
 BuildRequires: hwdata
 BuildRequires: gobject-introspection-devel
diff --git a/tests/Makefile.am b/tests/Makefile.am
index a822af2..27b0f8d 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -23,14 +23,6 @@ check_PROGRAMS = \
 	test-imagelist \
         $(NULL)
 
-if HAVE_CURL
-check_PROGRAMS += \
-	test-mediauris \
-	test-treeuris \
-	test-imageuris \
-	$(NULL)
-endif
-
 COMMON_LDADD = \
 	$(COVERAGE_LDFLAGS) \
 	$(GLIB_LIBS) \
@@ -78,8 +70,8 @@ test_list_LDADD = $(COMMON_LDADD)
 test_list_CFLAGS = $(COMMON_CFLAGS)
 test_list_SOURCES = test-list.c
 
-test_media_LDADD = $(COMMON_LDADD) $(CURL_LIBS)
-test_media_CFLAGS = $(COMMON_CFLAGS) $(CURL_CFLAGS)
+test_media_LDADD = $(COMMON_LDADD)
+test_media_CFLAGS = $(COMMON_CFLAGS)
 test_media_SOURCES = test-media.c
 
 test_devicelist_LDADD = $(COMMON_LDADD)
@@ -110,20 +102,6 @@ test_isodetect_LDADD = $(COMMON_LDADD)
 test_isodetect_CFLAGS = $(COMMON_CFLAGS)
 test_isodetect_SOURCES = test-isodetect.c
 
-if HAVE_CURL
-test_mediauris_LDADD = $(COMMON_LDADD) $(CURL_LIBS)
-test_mediauris_CFLAGS = $(COMMON_CFLAGS) $(CURL_CFLAGS)
-test_mediauris_SOURCES = test-mediauris.c test-uris-common.c test-uris-common.h
-
-test_treeuris_LDADD = $(COMMON_LDADD) $(CURL_LIBS)
-test_treeuris_CFLAGS = $(COMMON_CFLAGS) $(CURL_CFLAGS)
-test_treeuris_SOURCES = test-treeuris.c test-uris-common.c test-uris-common.h
-
-test_imageuris_LDADD = $(COMMON_LDADD) $(CURL_LIBS)
-test_imageuris_CFLAGS = $(COMMON_CFLAGS) $(CURL_CFLAGS)
-test_imageuris_SOURCES = test-imageuris.c test-uris-common.c test-uris-common.h
-endif
-
 test_install_script_LDADD = $(COMMON_LDADD)
 test_install_script_CFLAGS = $(COMMON_CFLAGS)
 test_install_script_SOURCES = test-install-script.c
diff --git a/tests/test-imageuris.c b/tests/test-imageuris.c
deleted file mode 100644
index 5a1128c..0000000
--- a/tests/test-imageuris.c
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * Copyright (C) 2108 Red Hat, Inc.
- *
- * This program 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 program 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 program. If not, see <http://www.gnu.org/licenses/>
- *
- * Authors:
- *   Daniel P. Berrange <berrange at redhat.com>
- */
-
-#include <config.h>
-
-#include <stdlib.h>
-#include <osinfo/osinfo.h>
-#include <curl/curl.h>
-
-#include "test-uris-common.h"
-
-static void
-test_imageuris(gconstpointer data)
-{
-    OsinfoOs *os = OSINFO_OS(data);
-    GError *error = NULL;
-
-    OsinfoImageList *imagelist = osinfo_os_get_image_list(os);
-
-    test_uri(OSINFO_LIST(imagelist), (GetURLFunc) osinfo_image_get_url, &error);
-
-    g_assert_no_error(error);
-
-    g_object_unref(imagelist);
-}
-
-int
-main(int argc, char *argv[])
-{
-    int ret;
-    OsinfoLoader *loader = osinfo_loader_new();
-    OsinfoDb *db = osinfo_loader_get_db(loader);
-    OsinfoOsList *oslist = NULL;
-    GError *error = NULL;
-
-    g_test_init(&argc, &argv, NULL);
-    g_test_set_nonfatal_assertions();
-
-    if (!g_getenv("LIBOSINFO_NETWORK_TESTS"))
-        return 77; /* Skip */
-
-    /* Upfront so we don't confuse valgrind */
-    curl_global_init(CURL_GLOBAL_ALL);
-    osinfo_db_get_type();
-    osinfo_os_get_type();
-    osinfo_list_get_type();
-    osinfo_oslist_get_type();
-    osinfo_filter_get_type();
-
-    osinfo_loader_process_default_path(loader, &error);
-    g_assert_no_error(error);
-
-    oslist = osinfo_db_get_os_list(db);
-    test_uris(oslist, "/imageuris/uris", test_imageuris);
-
-    ret = g_test_run();
-
-    if (oslist)
-        g_object_unref(oslist);
-
-    g_object_unref(loader);
-
-    curl_global_cleanup();
-
-    return ret;
-}
diff --git a/tests/test-mediauris.c b/tests/test-mediauris.c
deleted file mode 100644
index 004c5bb..0000000
--- a/tests/test-mediauris.c
+++ /dev/null
@@ -1,89 +0,0 @@
-/*
- * Copyright (C) 2009-2012, 2014 Red Hat, Inc.
- *
- * This program 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 program 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 program. If not, see <http://www.gnu.org/licenses/>
- *
- * Authors:
- *   Daniel P. Berrange <berrange at redhat.com>
- */
-
-#include <config.h>
-
-#include <stdlib.h>
-#include <osinfo/osinfo.h>
-#include <curl/curl.h>
-
-#include "test-uris-common.h"
-
-static void
-test_mediauris(gconstpointer data)
-{
-    OsinfoOs *os = OSINFO_OS(data);
-    GError *error = NULL;
-
-    OsinfoMediaList *medialist = osinfo_os_get_media_list(os);
-
-    test_uri(OSINFO_LIST(medialist), (GetURLFunc) osinfo_media_get_url, &error);
-
-    g_assert_no_error(error);
-
-    g_object_unref(medialist);
-}
-
-int
-main(int argc, char *argv[])
-{
-    int ret;
-    OsinfoLoader *loader = osinfo_loader_new();
-    OsinfoDb *db = osinfo_loader_get_db(loader);
-    OsinfoOsList *oslist = NULL;
-    GError *error = NULL;
-
-    g_test_init(&argc, &argv, NULL);
-    g_test_set_nonfatal_assertions();
-
-    if (!g_getenv("LIBOSINFO_NETWORK_TESTS"))
-        return 77; /* Skip */
-
-    /* Upfront so we don't confuse valgrind */
-    curl_global_init(CURL_GLOBAL_ALL);
-    osinfo_entity_get_type();
-    osinfo_db_get_type();
-    osinfo_device_get_type();
-    osinfo_platform_get_type();
-    osinfo_os_get_type();
-    osinfo_list_get_type();
-    osinfo_devicelist_get_type();
-    osinfo_platformlist_get_type();
-    osinfo_oslist_get_type();
-    osinfo_filter_get_type();
-
-
-    osinfo_loader_process_default_path(loader, &error);
-    g_assert_no_error(error);
-
-    oslist = osinfo_db_get_os_list(db);
-    test_uris(oslist, "/mediauris/uris", test_mediauris);
-
-    ret = g_test_run();
-
-    if (oslist)
-        g_object_unref(oslist);
-
-    g_object_unref(loader);
-
-    curl_global_cleanup();
-
-    return ret;
-}
diff --git a/tests/test-treeuris.c b/tests/test-treeuris.c
deleted file mode 100644
index 50bb8ce..0000000
--- a/tests/test-treeuris.c
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
- * Copyright (C) 2009-2012, 2014 Red Hat, Inc.
- *
- * This program 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 program 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 program. If not, see <http://www.gnu.org/licenses/>
- *
- * Authors:
- *   Daniel P. Berrange <berrange at redhat.com>
- */
-
-#include <config.h>
-
-#include <stdlib.h>
-#include <osinfo/osinfo.h>
-#include <curl/curl.h>
-
-#include "test-uris-common.h"
-
-static void
-test_treeuris(gconstpointer data)
-{
-    OsinfoOs *os = OSINFO_OS(data);
-    GError *error = NULL;
-    OsinfoTreeList *treelist = osinfo_os_get_tree_list(os);
-
-    test_uri(OSINFO_LIST(treelist), (GetURLFunc) osinfo_tree_get_url, &error);
-
-    g_assert_no_error(error);
-
-    g_object_unref(treelist);
-}
-
-int
-main(int argc, char *argv[])
-{
-    int ret;
-    OsinfoLoader *loader = osinfo_loader_new();
-    OsinfoDb *db = osinfo_loader_get_db(loader);
-    OsinfoOsList *oslist = NULL;
-    GError *error = NULL;
-
-    g_test_init(&argc, &argv, NULL);
-    g_test_set_nonfatal_assertions();
-
-    if (!g_getenv("LIBOSINFO_NETWORK_TESTS"))
-        return 77; /* Skip */
-
-    /* Upfront so we don't confuse valgrind */
-    curl_global_init(CURL_GLOBAL_ALL);
-    osinfo_entity_get_type();
-    osinfo_db_get_type();
-    osinfo_device_get_type();
-    osinfo_platform_get_type();
-    osinfo_os_get_type();
-    osinfo_list_get_type();
-    osinfo_devicelist_get_type();
-    osinfo_platformlist_get_type();
-    osinfo_oslist_get_type();
-    osinfo_filter_get_type();
-
-    osinfo_loader_process_default_path(loader, &error);
-    g_assert_no_error(error);
-
-    oslist = osinfo_db_get_os_list(db);
-    test_uris(oslist, "/treeuris/uris", test_treeuris);
-
-    ret = g_test_run();
-
-    if (oslist)
-        g_object_unref(oslist);
-
-    g_object_unref(loader);
-
-    curl_global_cleanup();
-
-    return ret;
-}
diff --git a/tests/test-uris-common.c b/tests/test-uris-common.c
deleted file mode 100644
index 8ebe4ea..0000000
--- a/tests/test-uris-common.c
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- * Copyright (C) 2019 Red Hat, Inc.
- *
- * This program 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 program 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 program. If not, see <http://www.gnu.org/licenses/>
- */
-
-#include <config.h>
-
-#include <stdlib.h>
-#include <osinfo/osinfo.h>
-#include <curl/curl.h>
-
-#include "test-uris-common.h"
-
-static size_t write_callback(char *ptr,
-                             size_t size,
-                             size_t nmemb,
-                             void *userdata)
-{
-    abort();
-}
-
-void test_uri(OsinfoList *list, GetURLFunc get_url_func, GError **error)
-{
-    GList *el = NULL, *tmp;
-
-    tmp = el = osinfo_list_get_elements(list);
-    while (tmp) {
-        const gchar *url = get_url_func(tmp->data);
-        const gchar *debugstr;
-        CURL *curl;
-        CURLcode res;
-        long response_code;
-
-        if (url == NULL || g_str_equal(url, "")) {
-            tmp = tmp->next;
-            continue;
-        }
-
-        curl = curl_easy_init();
-        curl_easy_setopt(curl, CURLOPT_NOBODY, 1L);
-        curl_easy_setopt(curl, CURLOPT_TIMEOUT, 60L);
-        curl_easy_setopt(curl, CURLOPT_TCP_KEEPALIVE, 1L);
-        curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
-        curl_easy_setopt(curl, CURLOPT_FAILONERROR, 1L);
-        curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_callback);
-
-        if ((debugstr = g_getenv("LIBOSINFO_TEST_DEBUG"))) {
-            int debug_level = atoi(debugstr);
-
-            curl_easy_setopt(curl, CURLOPT_VERBOSE, debug_level > 0 ? 1L : 0L);
-        }
-
-        g_test_message("%s", url);
-        curl_easy_setopt(curl, CURLOPT_URL, url);
-        res = curl_easy_perform(curl);
-        curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &response_code);
-
-        g_test_message("res=%d, %s; code=%ld", res, curl_easy_strerror(res), response_code);
-
-        if (res == CURLE_OPERATION_TIMEDOUT) {
-            g_printerr("Ignoring network timeout failure for %s\n", url);
-        } else {
-            if (res != CURLE_OK) {
-                g_printerr("Failed URI %s res=%d (%s) code=%ld\n",
-                           url, res, curl_easy_strerror(res), response_code);
-            }
-            g_assert_cmpint(res, ==, CURLE_OK);
-        }
-
-        tmp = tmp->next;
-        curl_easy_cleanup(curl);
-    }
-
-    g_list_free(el);
-}
-
-
-void test_uris(OsinfoOsList *oslist, const gchar *prefix, TestURLFunc test_func)
-{
-    GList *osel = NULL, *tmp;
-
-    tmp = osel = osinfo_list_get_elements(OSINFO_LIST(oslist));
-
-    while (tmp) {
-        OsinfoOs *os = tmp->data;
-        gchar *name = g_strdup_printf("%s/%s",
-                                      prefix,
-                                      osinfo_product_get_short_id(OSINFO_PRODUCT(os)));
-
-        g_test_add_data_func(name, os, test_func);
-        g_free(name);
-
-        tmp = tmp->next;
-    }
-
-    g_list_free(osel);
-}
diff --git a/tests/test-uris-common.h b/tests/test-uris-common.h
deleted file mode 100644
index 34cc242..0000000
--- a/tests/test-uris-common.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Copyright (C) 2019 Red Hat, Inc.
- *
- * This program 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 program 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 program. If not, see <http://www.gnu.org/licenses/>
- */
-
-#include <config.h>
-
-#include <osinfo/osinfo.h>
-
-typedef const gchar *(*GetURLFunc)(gpointer p);
-typedef void (*TestURLFunc)(gconstpointer p);
-
-void test_uri(OsinfoList *list, GetURLFunc get_url_func, GError **error);
-void test_uris(OsinfoOsList *oslist, const gchar *prefix, TestURLFunc test_func);
-- 
2.20.1




More information about the Libosinfo mailing list