Signed-off-by: Fabiano Fidêncio <fidencio@xxxxxxxxxx> --- .../dbdata/os/fedoraproject.org/fedora-16.xml | 4 +++ tests/test-os.c | 29 ++++++++++++++----- 2 files changed, 25 insertions(+), 8 deletions(-) diff --git a/tests/dbdata/os/fedoraproject.org/fedora-16.xml b/tests/dbdata/os/fedoraproject.org/fedora-16.xml index c67ce23..758c45a 100644 --- a/tests/dbdata/os/fedoraproject.org/fedora-16.xml +++ b/tests/dbdata/os/fedoraproject.org/fedora-16.xml @@ -28,5 +28,9 @@ <arch>i386</arch> </treeinfo> </tree> + + <tree arch="x86_64"> + <url>http://archive.fedoraproject.org/pub/archive/fedora/linux/releases/16/Fedora/x86_64/os/</url> + </tree> </os> </libosinfo> diff --git a/tests/test-os.c b/tests/test-os.c index 1756e59..7c0a198 100644 --- a/tests/test-os.c +++ b/tests/test-os.c @@ -70,6 +70,8 @@ test_loader(void) OsinfoTreeList *treelist; OsinfoTree *tree; GError *error = NULL; + gsize i = 0; + gint treelist_len; const char *str; loader = osinfo_loader_new(); @@ -131,14 +133,25 @@ test_loader(void) str = osinfo_product_get_short_id(OSINFO_PRODUCT(os)); g_assert_cmpstr(str, ==, "fedora16"); treelist = osinfo_os_get_tree_list(os); - g_assert_cmpint(osinfo_list_get_length(OSINFO_LIST(treelist)), ==, 1); - tree = OSINFO_TREE(osinfo_list_get_nth(OSINFO_LIST(treelist), 0)); - str = osinfo_tree_get_treeinfo_family(tree); - g_assert_cmpstr(str, ==, "Fedora"); - str = osinfo_tree_get_treeinfo_version(tree); - g_assert_cmpstr(str, ==, "16"); - str = osinfo_tree_get_treeinfo_arch(tree); - g_assert_cmpstr(str, ==, "i386"); + treelist_len = osinfo_list_get_length(OSINFO_LIST(treelist)); + g_assert_cmpint(treelist_len, ==, 2); + + for (i = 0; i < treelist_len; i++) { + tree = OSINFO_TREE(osinfo_list_get_nth(OSINFO_LIST(treelist), i)); + + str = osinfo_tree_get_architecture(tree); + if (g_str_equal(str, "i686")) { + g_assert_true(osinfo_tree_has_treeinfo(tree)); + str = osinfo_tree_get_treeinfo_family(tree); + g_assert_cmpstr(str, ==, "Fedora"); + str = osinfo_tree_get_treeinfo_version(tree); + g_assert_cmpstr(str, ==, "16"); + str = osinfo_tree_get_treeinfo_arch(tree); + g_assert_cmpstr(str, ==, "i386"); + } else { + g_assert_false(osinfo_tree_has_treeinfo(tree)); + } + } g_object_unref(loader); } -- 2.19.1 _______________________________________________ Libosinfo mailing list Libosinfo@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libosinfo