예제 #1
0
static int
mymain(void)
{
    int ret = 0;

    if ((caps = testLXCCapsInit()) == NULL)
        return EXIT_FAILURE;

# define DO_TEST_FULL(name, is_different, inactive)                     \
    do {                                                                \
        const struct testInfo info = {name, is_different, inactive};    \
        if (virtTestRun("LXC XML-2-XML " name,                         \
                        1, testCompareXMLToXMLHelper, &info) < 0)       \
            ret = -1;                                                   \
    } while (0)

# define DO_TEST(name) \
    DO_TEST_FULL(name, 0, false)

# define DO_TEST_DIFFERENT(name) \
    DO_TEST_FULL(name, 1, false)

    /* Unset or set all envvars here that are copied in lxcdBuildCommandLine
     * using ADD_ENV_COPY, otherwise these tests may fail due to unexpected
     * values for these envvars */
    setenv("PATH", "/bin", 1);

    DO_TEST("systemd");
    DO_TEST("hostdev");

    virObjectUnref(caps);

    return ret==0 ? EXIT_SUCCESS : EXIT_FAILURE;
}
예제 #2
0
static int
mymain(void)
{
    int ret = 0;

    if ((caps = testLXCCapsInit()) == NULL)
        return EXIT_FAILURE;

    if (!(xmlopt = lxcDomainXMLConfInit()))
        return EXIT_FAILURE;

# define DO_TEST_FULL(name, is_different, inactive, parse_flags)        \
    do {                                                                \
        const struct testInfo info = {name, is_different, inactive,     \
                                      parse_flags};                     \
        if (virTestRun("LXC XML-2-XML " name,                           \
                       testCompareXMLToXMLHelper, &info) < 0)           \
            ret = -1;                                                   \
    } while (0)

# define DO_TEST(name) \
    DO_TEST_FULL(name, 0, false, 0)

# define DO_TEST_DIFFERENT(name) \
    DO_TEST_FULL(name, 1, false, 0)

    /* Unset or set all envvars here that are copied in lxcdBuildCommandLine
     * using ADD_ENV_COPY, otherwise these tests may fail due to unexpected
     * values for these envvars */
    setenv("PATH", "/bin", 1);

    DO_TEST("systemd");
    DO_TEST("hostdev");
    DO_TEST("disk-formats");
    DO_TEST_DIFFERENT("filesystem-ram");
    DO_TEST("filesystem-root");
    DO_TEST("idmap");
    DO_TEST("capabilities");
    DO_TEST("sharenet");
    DO_TEST("ethernet");
    DO_TEST_FULL("filesystem-root", 0, false,
                 VIR_DOMAIN_DEF_PARSE_SKIP_OSTYPE_CHECKS);

    virObjectUnref(caps);
    virObjectUnref(xmlopt);

    return ret == 0 ? EXIT_SUCCESS : EXIT_FAILURE;
}
예제 #3
0
static int
mymain(void)
{
    int ret = EXIT_SUCCESS;

    if (!(caps = testLXCCapsInit()))
        return EXIT_FAILURE;

    if (!(xmlopt = lxcDomainXMLConfInit())) {
        virObjectUnref(caps);
        return EXIT_FAILURE;
    }

# define DO_TEST(name, expectError)                         \
    do {                                                    \
        const struct testInfo info = { name, expectError }; \
        if (virTestRun("LXC Native-2-XML " name,            \
                       testCompareXMLToConfigHelper,        \
                       &info) < 0)                          \
            ret = EXIT_FAILURE;                             \
    } while (0)

    DO_TEST("simple", false);
    DO_TEST("fstab", true);
    DO_TEST("nonetwork", false);
    DO_TEST("nonenetwork", false);
    DO_TEST("physnetwork", false);
    DO_TEST("macvlannetwork", false);
    DO_TEST("vlannetwork", false);
    DO_TEST("idmap", false);
    DO_TEST("memtune", false);
    DO_TEST("cputune", false);
    DO_TEST("cpusettune", false);
    DO_TEST("blkiotune", false);
    DO_TEST("ethernet", false);

    virObjectUnref(xmlopt);
    virObjectUnref(caps);

    return ret;
}