Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/rpm-software-management/createrepo_c.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleš Matěj <amatej@redhat.com>2022-03-17 16:29:47 +0300
committerNeal Gompa (ニール・ゴンパ) <ngompa13@gmail.com>2022-03-29 07:56:13 +0300
commitdc4542488c09f4d51f04f79ea146d6d79085bbc1 (patch)
treee613c4a49cea0776162f7030868e092afb9f5ab8
parenta5a5cf64c73dcd2c07f4902efef44ec07ae365d7 (diff)
Remove C API for cr_xml_parse_main_metadata_together
It is obsoleted by cr_PkgIterator_new and its API. It also converts some of the tests to using cr_PkgIterator.
-rw-r--r--src/xml_parser.h38
-rw-r--r--src/xml_parser_main_metadata_together.c59
-rw-r--r--tests/test_xml_parser_main_metadata_together.c327
3 files changed, 115 insertions, 309 deletions
diff --git a/src/xml_parser.h b/src/xml_parser.h
index 6e1e3f1..26bd06c 100644
--- a/src/xml_parser.h
+++ b/src/xml_parser.h
@@ -278,44 +278,6 @@ cr_xml_parse_updateinfo(const char *path,
void *warningcb_data,
GError **err);
-/** Parse all 3 main metadata types (primary, filelists and other) at the same time.
- * Once a package is fully parsed pkgcb is called, if a cr_Package wasn't provided using
- * newpkgcb new cr_Package is created and its ownership is transferred to the user by the
- * pkgcb call.
- * This means we don't have store all the packages in memory at the same time, which
- * significantly reduces the memory footprint.
- * Input metadata files can be compressed.
- * Metadata primary, filelists and other have to have the packages in the same order.
- * @param primary_path Path to a primary xml file.
- * @param filelists_path Path to a filelists xml file.
- * @param other_path Path to an other xml file.
- * @param newpkgcb Callback for a new package. Called when the new package
- * xml chunk is found and a package object to store the data
- * is needed. If this callback is used, the user has full
- * ownership of the package, it will not be freed if the
- * parsing is interrupted or there is an error.
- * @param newpkgcb_data User data for the newpkgcb.
- * @param pkgcb Package callback. Called when a package is completely
- * parsed containing information from all 3 main metadata
- * files. Could be NULL if newpkgcb is not NULL.
- * @param pkgcb_data User data for the pkgcb.
- * @param warningcb Callback for warning messages.
- * @param warningcb_data User data for the warningcb.
- * @param err GError **
- * @return cr_Error code.
- */
-int
-cr_xml_parse_main_metadata_together(const char *primary_path,
- const char *filelists_path,
- const char *other_path,
- cr_XmlParserNewPkgCb newpkgcb,
- void *newpkgcb_data,
- cr_XmlParserPkgCb pkgcb,
- void *pkgcb_data,
- cr_XmlParserWarningCb warningcb,
- void *warningcb_data,
- GError **err);
-
typedef struct _cr_PkgIterator cr_PkgIterator;
cr_PkgIterator *
diff --git a/src/xml_parser_main_metadata_together.c b/src/xml_parser_main_metadata_together.c
index 3836fbb..684cf27 100644
--- a/src/xml_parser_main_metadata_together.c
+++ b/src/xml_parser_main_metadata_together.c
@@ -319,65 +319,6 @@ parse_next_section(CR_FILE *target_file, const char *path, cr_ParserData *pd, GE
//TODO(amatej): there is quite some overlap with this and cr_load_xml_files,
// consider using this api to implement cr_load_xml_files?
-int cr_xml_parse_main_metadata_together(const char *primary_path,
- const char *filelists_path,
- const char *other_path,
- cr_XmlParserNewPkgCb newpkgcb,
- void *newpkgcb_data,
- cr_XmlParserPkgCb pkgcb,
- void *pkgcb_data,
- cr_XmlParserWarningCb warningcb,
- void *warningcb_data,
- GError **err)
-{
- assert(pkgcb || newpkgcb);
- cr_PkgIterator* pkg_iterator = cr_PkgIterator_new(
- primary_path, filelists_path, other_path, newpkgcb, newpkgcb_data, warningcb, warningcb_data, err
- );
-
- if (*err) {
- return (*err)->code;
- }
-
- assert(pkg_iterator);
- cr_Package* package = NULL;
- GError* tmp_err = NULL;
-
- while (package = cr_PkgIterator_parse_next(pkg_iterator, err)) {
- if (pkgcb) {
- // call user package callback
- // pkgcb() destroys the package!!
- if (pkgcb(package, pkgcb_data, &tmp_err)) {
- // Error condition
- if (tmp_err) {
- g_propagate_prefixed_error(err, tmp_err, "Parsing interrupted: ");
- } else {
- g_set_error(err, ERR_DOMAIN, CRE_CBINTERRUPTED, "Parsing interrupted");
- }
- cr_PkgIterator_free(pkg_iterator, err);
- return CRE_CBINTERRUPTED;
- } else {
- // If callback return CRE_OK but it simultaneously set
- // the tmp_err then it's a programming error.
- assert(tmp_err == NULL);
- }
- } else {
- // Free the package if there is no external callback to do so and we have no newpkgcb
- if (!newpkgcb) {
- cr_package_free(package);
- }
- }
- }
-
- cr_PkgIterator_free(pkg_iterator, err);
-
- if (*err) {
- return (*err)->code;
- } else {
- return CRE_OK;
- }
-}
-
// TODO: maybe whether or not individual files are parsed could be controlled by NULL paths? I think cr_load_xml_files
// already works that way.
cr_PkgIterator *
diff --git a/tests/test_xml_parser_main_metadata_together.c b/tests/test_xml_parser_main_metadata_together.c
index 8ce417d..09a53dd 100644
--- a/tests/test_xml_parser_main_metadata_together.c
+++ b/tests/test_xml_parser_main_metadata_together.c
@@ -29,54 +29,6 @@
#include "createrepo/xml_parser_internal.h"
// Callbacks
-
-static int
-pkgcb(cr_Package *pkg, void *cbdata, GError **err)
-{
- g_assert(pkg);
- g_assert(!err || *err == NULL);
- if (cbdata) *((int *)cbdata) += 1;
- cr_package_free(pkg);
- return CR_CB_RET_OK;
-}
-
-static int
-pkgcb_interrupt(cr_Package *pkg, void *cbdata, GError **err)
-{
- g_assert(pkg);
- g_assert(!err || *err == NULL);
- if (cbdata) *((int *)cbdata) += 1;
- cr_package_free(pkg);
- return CR_CB_RET_ERR;
-}
-
-static int
-newpkgcb(cr_Package **pkg,
- G_GNUC_UNUSED const char *pkgId,
- const char *name,
- G_GNUC_UNUSED const char *arch,
- G_GNUC_UNUSED void *cbdata,
- GError **err)
-{
- g_assert(pkg != NULL);
- g_assert(*pkg == NULL);
- g_assert(pkgId != NULL);
- g_assert(!err || *err == NULL);
-
- *pkg = cr_package_new();
- cr_Package **list;
-
- if (cbdata) {
- cr_Package **pkgl = cbdata;
- for (; *pkgl; pkgl++) {
- continue;
- }
- *pkgl = *pkg;
- }
-
- return CR_CB_RET_OK;
-}
-
static int
newpkgcb_skip_fake_bash(cr_Package **pkg,
G_GNUC_UNUSED const char *pkgId,
@@ -146,230 +98,193 @@ warningcb_interrupt(G_GNUC_UNUSED cr_XmlParserWarningType type,
return CR_CB_RET_ERR;
}
-// Tests
-
static void
-test_cr_xml_parse_main_metadata_together_00(void)
+test_cr_xml_package_iterator_00(void)
{
int parsed = 0;
GError *tmp_err = NULL;
- int ret = cr_xml_parse_main_metadata_together(TEST_REPO_02_PRIMARY, TEST_REPO_02_FILELISTS, TEST_REPO_02_OTHER,
- NULL, NULL, pkgcb, &parsed, NULL, NULL, &tmp_err);
+ cr_Package *package = NULL;
+
+ cr_PkgIterator *pkg_iterator = cr_PkgIterator_new(
+ TEST_REPO_02_PRIMARY, TEST_REPO_02_FILELISTS, TEST_REPO_02_OTHER, NULL, NULL, NULL, NULL, &tmp_err);
+
+ while ((package = cr_PkgIterator_parse_next(pkg_iterator, &tmp_err))) {
+ parsed++;
+ cr_package_free(package);
+ }
+
+ g_assert(cr_PkgIterator_is_finished(pkg_iterator));
+ cr_PkgIterator_free(pkg_iterator, &tmp_err);
+
g_assert(tmp_err == NULL);
- g_assert_cmpint(ret, ==, CRE_OK);
g_assert_cmpint(parsed, ==, 2);
}
-static void
-test_cr_xml_parse_main_metadata_together_01_out_of_order_pkgs(void)
-{
- int parsed = 0;
- GError *tmp_err = NULL;
- int ret = cr_xml_parse_main_metadata_together(TEST_REPO_02_PRIMARY,
- TEST_DIFF_ORDER_FILELISTS,
- TEST_REPO_02_OTHER,
- NULL, NULL, pkgcb, &parsed, NULL, NULL, &tmp_err);
- g_assert(tmp_err != NULL);
- g_assert_cmpint(ret, ==, CRE_XMLPARSER);
- g_clear_error(&tmp_err);
-}
static void
-test_cr_xml_parse_main_metadata_together_02_invalid_path(void)
+test_cr_xml_package_iterator_01_warningcb_interrupt(void)
{
int parsed = 0;
+ int numofwarnings = 0;
GError *tmp_err = NULL;
- int ret = cr_xml_parse_main_metadata_together("/non/existent/file", TEST_REPO_02_FILELISTS, TEST_REPO_02_OTHER,
- NULL, NULL, pkgcb, &parsed, NULL, NULL, &tmp_err);
- g_assert(tmp_err != NULL);
- g_assert_cmpint(ret, ==, CRE_NOFILE);
- g_error_free(tmp_err);
-}
+ cr_Package *package = NULL;
-static void
-test_cr_xml_parse_main_metadata_together_03_newpkgcb_returns_null(void)
-{
- int parsed = 0;
- GError *tmp_err = NULL;
- int ret = cr_xml_parse_main_metadata_together(TEST_REPO_02_PRIMARY, TEST_REPO_02_FILELISTS, TEST_REPO_02_OTHER,
- newpkgcb_skip_fake_bash, NULL, pkgcb, &parsed, NULL, NULL, &tmp_err);
- g_assert(tmp_err == NULL);
- g_assert_cmpint(ret, ==, CRE_OK);
- g_assert_cmpint(parsed, ==, 1);
+ cr_PkgIterator *pkg_iterator = cr_PkgIterator_new(
+ TEST_REPO_02_PRIMARY, TEST_MRF_BAD_TYPE_FIL, TEST_REPO_02_OTHER, NULL, NULL, warningcb_interrupt, &numofwarnings, &tmp_err);
- parsed = 0;
- ret = cr_xml_parse_main_metadata_together(TEST_REPO_02_PRIMARY, TEST_DIFF_ORDER_FILELISTS, TEST_REPO_02_OTHER,
- newpkgcb_skip_fake_bash, NULL, pkgcb, &parsed, NULL, NULL, &tmp_err);
- g_assert(tmp_err == NULL);
- g_assert_cmpint(ret, ==, CRE_OK);
- g_assert_cmpint(parsed, ==, 1);
+ while ((package = cr_PkgIterator_parse_next(pkg_iterator, &tmp_err))) {
+ parsed++;
+ cr_package_free(package);
+ }
- parsed = 0;
- ret = cr_xml_parse_main_metadata_together(TEST_REPO_02_PRIMARY, TEST_DIFF_ORDER_FILELISTS, TEST_REPO_02_OTHER,
- newpkgcb_skip_fake_bash, NULL, pkgcb, &parsed, NULL, NULL, &tmp_err);
- g_assert(tmp_err == NULL);
- g_assert_cmpint(ret, ==, CRE_OK);
- g_assert_cmpint(parsed, ==, 1);
-}
+ cr_PkgIterator_free(pkg_iterator, &tmp_err);
-static void
-test_cr_xml_parse_main_metadata_together_04_newpkgcb_interrupt(void)
-{
- int parsed = 0;
- GError *tmp_err = NULL;
- int ret = cr_xml_parse_main_metadata_together(TEST_REPO_02_PRIMARY, TEST_REPO_02_FILELISTS, TEST_REPO_02_OTHER,
- newpkgcb_interrupt, &parsed, NULL, NULL, NULL, NULL, &tmp_err);
g_assert(tmp_err != NULL);
- g_error_free(tmp_err);
- g_assert_cmpint(ret, ==, CRE_CBINTERRUPTED);
- g_assert_cmpint(parsed, ==, 1);
+ g_assert_cmpint(parsed, ==, 0);
+ g_assert_cmpint(tmp_err->code, ==, CRE_CBINTERRUPTED);
+ g_assert_cmpint(numofwarnings, ==, 1);
+ g_clear_error(&tmp_err);
}
static void
-test_cr_xml_parse_main_metadata_together_05_pkgcb_interrupt(void)
+test_cr_xml_package_iterator_02_long_primary(void)
{
int parsed = 0;
GError *tmp_err = NULL;
- int ret = cr_xml_parse_main_metadata_together(TEST_REPO_02_PRIMARY, TEST_REPO_02_FILELISTS, TEST_REPO_02_OTHER,
- NULL, NULL, pkgcb_interrupt, &parsed, NULL, NULL, &tmp_err);
- g_assert(tmp_err != NULL);
- g_error_free(tmp_err);
- g_assert_cmpint(ret, ==, CRE_CBINTERRUPTED);
- g_assert_cmpint(parsed, ==, 1);
-}
+ cr_Package *package = NULL;
+
+ cr_PkgIterator *pkg_iterator = cr_PkgIterator_new(
+ TEST_LONG_PRIMARY, TEST_REPO_02_FILELISTS, TEST_REPO_02_OTHER, NULL, NULL, NULL, NULL, &tmp_err);
+
+ while ((package = cr_PkgIterator_parse_next(pkg_iterator, &tmp_err))) {
+ parsed++;
+ cr_package_free(package);
+ }
+
+ g_assert(cr_PkgIterator_is_finished(pkg_iterator));
+ cr_PkgIterator_free(pkg_iterator, &tmp_err);
-static void
-test_cr_xml_parse_main_metadata_together_06_warnings_bad_file_type(void)
-{
- int parsed = 0;
- char *warnmsgs;
- GError *tmp_err = NULL;
- GString *warn_strings = g_string_new(0);
- int ret = cr_xml_parse_main_metadata_together(TEST_REPO_02_PRIMARY, TEST_MRF_BAD_TYPE_FIL, TEST_REPO_02_OTHER,
- NULL, NULL, pkgcb, &parsed, warningcb, warn_strings, &tmp_err);
g_assert(tmp_err == NULL);
- g_assert_cmpint(ret, ==, CRE_OK);
g_assert_cmpint(parsed, ==, 2);
- warnmsgs = g_string_free(warn_strings, FALSE);
- g_assert_cmpstr(warnmsgs, ==, "Unknown file type \"foo\";");
- g_free(warnmsgs);
}
static void
-test_cr_xml_parse_main_metadata_together_07_warningcb_interrupt(void)
+test_cr_xml_package_iterator_03_out_of_order_pkgs(void)
{
- int numofwarnings = 0;
GError *tmp_err = NULL;
- int ret = cr_xml_parse_main_metadata_together(TEST_REPO_02_PRIMARY, TEST_MRF_BAD_TYPE_FIL, TEST_REPO_02_OTHER,
- NULL, NULL, pkgcb, NULL, warningcb_interrupt, &numofwarnings,
- &tmp_err);
+ cr_Package *package = NULL;
+
+ cr_PkgIterator *pkg_iterator = cr_PkgIterator_new(
+ TEST_REPO_02_PRIMARY, TEST_DIFF_ORDER_FILELISTS, TEST_REPO_02_OTHER, NULL, NULL, NULL, NULL, &tmp_err);
+
+ package = cr_PkgIterator_parse_next(pkg_iterator, &tmp_err);
+
+ g_assert(package == NULL);
g_assert(tmp_err != NULL);
- g_error_free(tmp_err);
- g_assert_cmpint(ret, ==, CRE_CBINTERRUPTED);
- g_assert_cmpint(numofwarnings, ==, 1);
+
+ cr_PkgIterator_free(pkg_iterator, &tmp_err);
}
static void
-test_cr_xml_parse_main_metadata_together_071_multiple_warningcb(void)
+test_cr_xml_package_iterator_04_invalid_path(void)
{
- char *warnmsgs;
- GString *warn_strings = g_string_new(0);
- cr_Package *list_of_pkgs[2] = {NULL, NULL};
GError *tmp_err = NULL;
- int ret = cr_xml_parse_main_metadata_together(TEST_PRIMARY_MULTI_WARN_00, TEST_FILELISTS_MULTI_WARN_00, TEST_OTHER_MULTI_WARN_00,
- newpkgcb, &list_of_pkgs, NULL, NULL, warningcb, warn_strings, &tmp_err);
- g_assert(tmp_err == NULL);
- g_assert(list_of_pkgs[0] != NULL);
- g_assert(list_of_pkgs[1] != NULL);
- cr_package_free(list_of_pkgs[0]);
- cr_package_free(list_of_pkgs[1]);
- g_assert_cmpint(ret, ==, CRE_OK);
- warnmsgs = g_string_free(warn_strings, FALSE);
- g_assert_cmpstr(warnmsgs, ==, "Unknown element \"fooelement\";Missing attribute \"type\" of a package element;Unknown element \"foo\";Conversion of \"foobar\" to integer failed;Unknown element \"bar\";Missing attribute \"arch\" of a package element;Unknown file type \"xxx\";Unknown element \"bar\";Missing attribute \"name\" of a package element;Unknown element \"bar\";Conversion of \"xxx\" to integer failed;");
- g_free(warnmsgs);
-}
+ cr_PkgIterator *pkg_iterator = cr_PkgIterator_new(
+ "/non/existing/file.xml", TEST_REPO_02_FILELISTS, TEST_REPO_02_OTHER, NULL, NULL, NULL, NULL, &tmp_err);
-static void
-test_cr_xml_parse_main_metadata_together_08_long_primary(void)
-{
- int parsed = 0;
- GError *tmp_err = NULL;
- int ret = cr_xml_parse_main_metadata_together(TEST_LONG_PRIMARY, TEST_REPO_02_FILELISTS, TEST_REPO_02_OTHER,
- NULL, NULL, pkgcb, &parsed, NULL, NULL, &tmp_err);
- g_assert(tmp_err == NULL);
- g_assert_cmpint(ret, ==, CRE_OK);
- g_assert_cmpint(parsed, ==, 2);
+ g_assert(pkg_iterator == NULL);
+ g_assert(tmp_err != NULL);
}
static void
-test_cr_xml_package_iterator_00(void)
+test_cr_xml_package_iterator_05_newpkgcb_returns_null(void)
{
int parsed = 0;
GError *tmp_err = NULL;
cr_Package *package = NULL;
cr_PkgIterator *pkg_iterator = cr_PkgIterator_new(
- TEST_REPO_02_PRIMARY, TEST_REPO_02_FILELISTS, TEST_REPO_02_OTHER, NULL, NULL, NULL, NULL, &tmp_err);
+ TEST_REPO_02_PRIMARY, TEST_REPO_02_FILELISTS, TEST_REPO_02_OTHER, newpkgcb_skip_fake_bash, NULL, NULL, NULL, &tmp_err);
while ((package = cr_PkgIterator_parse_next(pkg_iterator, &tmp_err))) {
parsed++;
cr_package_free(package);
}
- g_assert(cr_PkgIterator_is_finished(pkg_iterator));
cr_PkgIterator_free(pkg_iterator, &tmp_err);
g_assert(tmp_err == NULL);
- g_assert_cmpint(parsed, ==, 2);
+ g_assert_cmpint(parsed, ==, 1);
}
+static void
+test_cr_xml_package_iterator_06_newpkgcb_interrupt(void)
+{
+ GError *tmp_err = NULL;
+ cr_Package *package = NULL;
+ int new_cb_count = 0;
+
+ cr_PkgIterator *pkg_iterator = cr_PkgIterator_new(
+ TEST_REPO_02_PRIMARY, TEST_REPO_02_FILELISTS, TEST_REPO_02_OTHER, newpkgcb_interrupt, &new_cb_count, NULL, NULL, &tmp_err);
+
+ package = cr_PkgIterator_parse_next(pkg_iterator, &tmp_err);
+
+ g_assert(package == NULL);
+ g_assert(tmp_err != NULL);
+ g_assert_cmpint(new_cb_count, ==, 1);
+
+ cr_PkgIterator_free(pkg_iterator, &tmp_err);
+}
static void
-test_cr_xml_package_iterator_01_warningcb_interrupt(void)
+test_cr_xml_package_iterator_07_warnings_bad_file_type(void)
{
- int parsed = 0;
- int numofwarnings = 0;
GError *tmp_err = NULL;
cr_Package *package = NULL;
+ GString *warn_strings = g_string_new(0);
+ int parsed = 0;
cr_PkgIterator *pkg_iterator = cr_PkgIterator_new(
- TEST_REPO_02_PRIMARY, TEST_MRF_BAD_TYPE_FIL, TEST_REPO_02_OTHER, NULL, NULL, warningcb_interrupt, &numofwarnings, &tmp_err);
+ TEST_REPO_02_PRIMARY, TEST_MRF_BAD_TYPE_FIL, TEST_REPO_02_OTHER, NULL, NULL, warningcb, warn_strings, &tmp_err);
while ((package = cr_PkgIterator_parse_next(pkg_iterator, &tmp_err))) {
parsed++;
cr_package_free(package);
}
- cr_PkgIterator_free(pkg_iterator, &tmp_err);
+ g_assert(tmp_err == NULL);
+ g_assert_cmpint(parsed, ==, 2);
+ char *warnmsgs = g_string_free(warn_strings, FALSE);
+ g_assert_cmpstr(warnmsgs, ==, "Unknown file type \"foo\";");
+ g_free(warnmsgs);
- g_assert(tmp_err != NULL);
- g_assert_cmpint(parsed, ==, 0);
- g_assert_cmpint(tmp_err->code, ==, CRE_CBINTERRUPTED);
- g_assert_cmpint(numofwarnings, ==, 1);
- g_clear_error(&tmp_err);
+ cr_PkgIterator_free(pkg_iterator, &tmp_err);
}
static void
-test_cr_xml_package_iterator_02_long_primary(void)
+test_cr_xml_package_iterator_08_multiple_warningscb(void)
{
- int parsed = 0;
GError *tmp_err = NULL;
cr_Package *package = NULL;
+ GString *warn_strings = g_string_new(0);
+ int parsed = 0;
cr_PkgIterator *pkg_iterator = cr_PkgIterator_new(
- TEST_LONG_PRIMARY, TEST_REPO_02_FILELISTS, TEST_REPO_02_OTHER, NULL, NULL, NULL, NULL, &tmp_err);
+ TEST_PRIMARY_MULTI_WARN_00, TEST_FILELISTS_MULTI_WARN_00, TEST_OTHER_MULTI_WARN_00, NULL, NULL, warningcb, warn_strings, &tmp_err);
while ((package = cr_PkgIterator_parse_next(pkg_iterator, &tmp_err))) {
parsed++;
cr_package_free(package);
}
- g_assert(cr_PkgIterator_is_finished(pkg_iterator));
- cr_PkgIterator_free(pkg_iterator, &tmp_err);
-
g_assert(tmp_err == NULL);
g_assert_cmpint(parsed, ==, 2);
+ char *warnmsgs = g_string_free(warn_strings, FALSE);
+ g_assert_cmpstr(warnmsgs, ==, "Unknown element \"fooelement\";Missing attribute \"type\" of a package element;Unknown element \"foo\";Conversion of \"foobar\" to integer failed;Unknown element \"bar\";Missing attribute \"arch\" of a package element;Unknown file type \"xxx\";Unknown element \"bar\";Missing attribute \"name\" of a package element;Unknown element \"bar\";Conversion of \"xxx\" to integer failed;");
+ g_free(warnmsgs);
+
+ cr_PkgIterator_free(pkg_iterator, &tmp_err);
}
int
@@ -377,36 +292,6 @@ main(int argc, char *argv[])
{
g_test_init(&argc, &argv, NULL);
- g_test_add_func("/xml_parser_main_metadata/test_cr_xml_parse_main_metadata_together_00",
- test_cr_xml_parse_main_metadata_together_00);
-
- g_test_add_func("/xml_parser_main_metadata/test_cr_xml_parse_main_metadata_together_01_out_of_order_pkgs",
- test_cr_xml_parse_main_metadata_together_01_out_of_order_pkgs);
-
- g_test_add_func("/xml_parser_main_metadata/test_cr_xml_parse_main_metadata_together_02_invalid_path",
- test_cr_xml_parse_main_metadata_together_02_invalid_path);
-
- g_test_add_func("/xml_parser_main_metadata/test_cr_xml_parse_main_metadata_together_03_newpkgcb_returns_null",
- test_cr_xml_parse_main_metadata_together_03_newpkgcb_returns_null);
-
- g_test_add_func("/xml_parser_main_metadata/test_cr_xml_parse_main_metadata_together_04_newpkgcb_interrupt",
- test_cr_xml_parse_main_metadata_together_04_newpkgcb_interrupt);
-
- g_test_add_func("/xml_parser_main_metadata/test_cr_xml_parse_main_metadata_together_05_pkgcb_interrupt",
- test_cr_xml_parse_main_metadata_together_05_pkgcb_interrupt);
-
- g_test_add_func("/xml_parser_main_metadata/test_cr_xml_parse_main_metadata_together_06_warnings_bad_file_type",
- test_cr_xml_parse_main_metadata_together_06_warnings_bad_file_type);
-
- g_test_add_func("/xml_parser_main_metadata/test_cr_xml_parse_main_metadata_together_07_warningcb_interrupt",
- test_cr_xml_parse_main_metadata_together_07_warningcb_interrupt);
-
- g_test_add_func("/xml_parser_main_metadata/test_cr_xml_parse_main_metadata_together_08_long_primary",
- test_cr_xml_parse_main_metadata_together_08_long_primary);
-
- g_test_add_func("/xml_parser_main_metadata/test_cr_xml_parse_main_metadata_together_071_multiple_warningcb",
- test_cr_xml_parse_main_metadata_together_071_multiple_warningcb);
-
g_test_add_func("/xml_parser_main_metadata/test_cr_xml_package_iterator_00",
test_cr_xml_package_iterator_00);
@@ -416,5 +301,23 @@ main(int argc, char *argv[])
g_test_add_func("/xml_parser_main_metadata/test_cr_xml_package_iterator_02_long_primary",
test_cr_xml_package_iterator_02_long_primary);
+ g_test_add_func("/xml_parser_main_metadata/test_cr_xml_package_iterator_03_out_of_order_pkgs",
+ test_cr_xml_package_iterator_03_out_of_order_pkgs);
+
+ g_test_add_func("/xml_parser_main_metadata/test_cr_xml_package_iterator_04_invalid_path",
+ test_cr_xml_package_iterator_04_invalid_path);
+
+ g_test_add_func("/xml_parser_main_metadata/test_cr_xml_package_iterator_05_newpkgcb_returns_null",
+ test_cr_xml_package_iterator_05_newpkgcb_returns_null);
+
+ g_test_add_func("/xml_parser_main_metadata/test_cr_xml_package_iterator_06_newpkgcb_interrupt",
+ test_cr_xml_package_iterator_06_newpkgcb_interrupt);
+
+ g_test_add_func("/xml_parser_main_metadata/test_cr_xml_package_iterator_07_warnings_bad_file_type",
+ test_cr_xml_package_iterator_07_warnings_bad_file_type);
+
+ g_test_add_func("/xml_parser_main_metadata/test_cr_xml_package_iterator_08_multiple_warningscb",
+ test_cr_xml_package_iterator_08_multiple_warningscb);
+
return g_test_run();
}