Blame tests/hooklib.at

Packit 8ea169
# -*- Autotest -*-
Packit 8ea169
Packit 8ea169
AT_BANNER([hooklib])
Packit 8ea169
Packit 8ea169
AT_TESTFUN([dir_is_in_dump_location],
Packit 8ea169
[[
Packit 8ea169
#include "libabrt.h"
Packit 8ea169
#include <assert.h>
Packit 8ea169
Packit 8ea169
void test(char *name, bool expected)
Packit 8ea169
{
Packit 8ea169
    if (dir_is_in_dump_location(name) != expected)
Packit 8ea169
    {
Packit 8ea169
        fprintf(stderr, "Bad: %s", name);
Packit 8ea169
        abort();
Packit 8ea169
    }
Packit 8ea169
Packit 8ea169
    free(name);
Packit 8ea169
}
Packit 8ea169
Packit 8ea169
int main(void)
Packit 8ea169
{
Packit 8ea169
    g_verbose = 3;
Packit 8ea169
    load_abrt_conf();
Packit 8ea169
Packit 8ea169
    g_verbose = 3;
Packit 8ea169
Packit 8ea169
    char *name;
Packit 8ea169
Packit 8ea169
    assert(dir_is_in_dump_location("/") == false);
Packit 8ea169
Packit 8ea169
    asprintf(&name, "%s", g_settings_dump_location);
Packit 8ea169
    test(name, false);
Packit 8ea169
Packit 8ea169
    asprintf(&name, "%s..evil", g_settings_dump_location);
Packit 8ea169
    test(name, false);
Packit 8ea169
Packit 8ea169
    asprintf(&name, "%s/", g_settings_dump_location);
Packit 8ea169
    test(name, false);
Packit 8ea169
Packit 8ea169
    asprintf(&name, "%s///", g_settings_dump_location);
Packit 8ea169
    test(name, false);
Packit 8ea169
Packit 8ea169
    asprintf(&name, "%s/.", g_settings_dump_location);
Packit 8ea169
    test(name, false);
Packit 8ea169
Packit 8ea169
    asprintf(&name, "%s///.", g_settings_dump_location);
Packit 8ea169
    test(name, false);
Packit 8ea169
Packit 8ea169
    asprintf(&name, "%s/./", g_settings_dump_location);
Packit 8ea169
    test(name, false);
Packit 8ea169
Packit 8ea169
    asprintf(&name, "%s/.///", g_settings_dump_location);
Packit 8ea169
    test(name, false);
Packit 8ea169
Packit 8ea169
    asprintf(&name, "%s/..", g_settings_dump_location);
Packit 8ea169
    test(name, false);
Packit 8ea169
Packit 8ea169
    asprintf(&name, "%s///..", g_settings_dump_location);
Packit 8ea169
    test(name, false);
Packit 8ea169
Packit 8ea169
    asprintf(&name, "%s/../", g_settings_dump_location);
Packit 8ea169
    test(name, false);
Packit 8ea169
Packit 8ea169
    asprintf(&name, "%s/..///", g_settings_dump_location);
Packit 8ea169
    test(name, false);
Packit 8ea169
Packit 8ea169
    asprintf(&name, "%s/good/../../../evil", g_settings_dump_location);
Packit 8ea169
    test(name, false);
Packit 8ea169
Packit 8ea169
    asprintf(&name, "%s/good..still", g_settings_dump_location);
Packit 8ea169
    test(name, true);
Packit 8ea169
Packit 8ea169
    asprintf(&name, "%s/good.new", g_settings_dump_location);
Packit 8ea169
    test(name, true);
Packit 8ea169
Packit 8ea169
    asprintf(&name, "%s/.meta", g_settings_dump_location);
Packit 8ea169
    test(name, true);
Packit 8ea169
Packit 8ea169
    asprintf(&name, "%s/..data", g_settings_dump_location);
Packit 8ea169
    test(name, true);
Packit 8ea169
Packit 8ea169
    return 0;
Packit 8ea169
}
Packit 8ea169
]])
Packit 8ea169
Packit 8ea169
AT_TESTFUN([abrt_problem_entry_is_post_create_condition],
Packit 8ea169
[[
Packit 8ea169
#include "libabrt.h"
Packit 8ea169
#include <assert.h>
Packit 8ea169
Packit 8ea169
int main(void)
Packit 8ea169
{
Packit 8ea169
    g_verbose = 3;
Packit 8ea169
    load_abrt_conf();
Packit 8ea169
Packit 8ea169
    assert(problem_entry_is_post_create_condition(FILENAME_TYPE));
Packit 8ea169
    assert(problem_entry_is_post_create_condition(FILENAME_ANALYZER));
Packit 8ea169
    assert(problem_entry_is_post_create_condition("basename"));
Packit 8ea169
Packit 8ea169
    assert(!problem_entry_is_post_create_condition(FILENAME_TIME));
Packit 8ea169
    assert(!problem_entry_is_post_create_condition(FILENAME_COUNT));
Packit 8ea169
    assert(!problem_entry_is_post_create_condition(FILENAME_REMOTE));
Packit 8ea169
    assert(!problem_entry_is_post_create_condition(FILENAME_PACKAGE));
Packit 8ea169
    assert(!problem_entry_is_post_create_condition(FILENAME_COMPONENT));
Packit 8ea169
Packit 8ea169
    return 0;
Packit 8ea169
}
Packit 8ea169
]])