Example #1
0
const char *
test_tap_ev_identifier_wait(ev_tstamp seconds, tap_ev * ev_ptr)
{
    tap_ev event;

    return tap_ev_identifier(*(ev_ptr == NULL ? &event : ev_ptr) = test_tap_ev_shift_wait(seconds));
}
Example #2
0
const char *
test_tap_ev_queue_identifier_wait(tap_ev_queue queue, ev_tstamp seconds, tap_ev * ev_ptr)
{
    tap_ev event;

    if (ev_ptr == NULL) {
        ev_ptr = &event;
    }

    *ev_ptr = test_tap_ev_queue_shift_wait(queue, seconds);

    return tap_ev_identifier(*ev_ptr);
}
Example #3
0
const void *
tap_ev_arg(tap_ev ev, const char * name)
{
    unsigned i;

    for (i = 0; i < ev->argc; i++) {
        if (strcmp(ev->argv[i * 2    ], name) == 0) {
            return ev->argv[i * 2 + 1];
        }
    }

    fprintf(stderr, "tap_ev_arg: '%s' event has no argument '%s'", (const char *)tap_ev_identifier(ev), name);
    assert("Argument was not found" == NULL);
    return NULL;    /* Can't happen */
}
Example #4
0
int
main(int argc, char *argv[]) {
    tap_ev           ev;
    struct object   self;
    struct object * this = &self;
    char            expected[1024];
    pid_t           pid = getpid();

    plan_tests(28);

    MOCK_SET_HOOK(openlog, t_openlog);
    MOCK_SET_HOOK(syslog,  t_syslog);
    q_syslog = tap_ev_queue_new();

    sxe_log_use_syslog("my-program", LOG_NDELAY|LOG_PID, LOG_USER);
    ev = tap_ev_queue_shift(q_syslog);
    is_eq(tap_ev_identifier(ev), "openlog",             "sxe_log_use_syslog() calls openlog()");
    is_eq(tap_ev_arg(ev, "ident"), "my-program",        "sxe_log_use_syslog() calls openlog() with correct 'ident' parameter");
    is(tap_ev_arg(ev, "option"), LOG_NDELAY|LOG_PID,    "sxe_log_use_syslog() calls openlog() with correct 'option' parameter");
    is(tap_ev_arg(ev, "facility"), LOG_USER,            "sxe_log_use_syslog() calls openlog() with correct 'facility' parameter");

    SXEL10("SXEL10");
    snprintf(expected, sizeof expected, "T=%d ------ 1 - SXEL10\n", pid);
    ev = tap_ev_queue_shift(q_syslog);
    is_eq(tap_ev_identifier(ev), "syslog",              "SXEL10() calls syslog()");
    is(tap_ev_arg(ev, "priority"), LOG_ERR,             "SXEL10() maps to LOG_ERR syslog level");
    is_eq(tap_ev_arg(ev, "logline"), expected,          "SXEL10() is logged correctly");

    SXEL21("SXEL21(%s)", "arg1");
    snprintf(expected, sizeof expected, "T=%d ------ 2 - SXEL21(arg1)\n", pid);
    ev = tap_ev_queue_shift(q_syslog);
    is_eq(tap_ev_identifier(ev), "syslog",              "SXEL21() calls syslog()");
    is(tap_ev_arg(ev, "priority"), LOG_WARNING,         "SXEL21() maps to LOG_WARNING syslog level");
    is_eq(tap_ev_arg(ev, "logline"), expected,          "SXEL21() is logged correctly");

    SXEL32("SXEL32(%s,%d)", "arg1", 22);
    snprintf(expected, sizeof expected, "T=%d ------ 3 - SXEL32(arg1,22)\n", pid);
    ev = tap_ev_queue_shift(q_syslog);
    is_eq(tap_ev_identifier(ev), "syslog",              "SXEL32() calls syslog()");
    is(tap_ev_arg(ev, "priority"), LOG_NOTICE,          "SXEL32() maps to LOG_NOTICE syslog level");
    is_eq(tap_ev_arg(ev, "logline"), expected,          "SXEL32() is logged correctly");

    SXEL43("SXEL43(%s,%d,%u)", "arg1", 22, 44);
    snprintf(expected, sizeof expected, "T=%d ------ 4 - SXEL43(arg1,22,44)\n", pid);
    ev = tap_ev_queue_shift(q_syslog);
    is_eq(tap_ev_identifier(ev), "syslog",              "SXEL43() calls syslog()");
    is(tap_ev_arg(ev, "priority"), LOG_INFO,            "SXEL43() maps to LOG_INFO syslog level");
    is_eq(tap_ev_arg(ev, "logline"), expected,          "SXEL43() is logged correctly");

    SXEL54("SXEL54(%s,%d,%u,%x)", "arg1", 22, 44, 64);
    snprintf(expected, sizeof expected, "T=%d ------ 5 - SXEL54(arg1,22,44,40)\n", pid);
    ev = tap_ev_queue_shift(q_syslog);
    is_eq(tap_ev_identifier(ev), "syslog",              "SXEL54() calls syslog()");
    is(tap_ev_arg(ev, "priority"), LOG_DEBUG,           "SXEL54() maps to LOG_DEBUG syslog level");
    is_eq(tap_ev_arg(ev, "logline"), expected,          "SXEL54() is logged correctly");

    SXEL65("SXEL65(%s,%d,%u,%x,%.2f)", "arg1", 22, 44, 64, 3.1415926);
    snprintf(expected, sizeof expected, "T=%d ------ 6 - SXEL65(arg1,22,44,40,3.14)\n", pid);
    ev = tap_ev_queue_shift(q_syslog);
    is_eq(tap_ev_identifier(ev), "syslog",              "SXEL65() calls syslog()");
    is(tap_ev_arg(ev, "priority"), LOG_DEBUG,           "SXEL65() maps to LOG_DEBUG syslog level");
    is_eq(tap_ev_arg(ev, "logline"), expected,          "SXEL65() is logged correctly");

    this->id = 99;
    SXEL10I("SXEL10I");
    snprintf(expected, sizeof expected, "T=%d     99 1 - SXEL10I\n", pid);
    ev = tap_ev_queue_shift(q_syslog);
    is_eq(tap_ev_identifier(ev), "syslog",              "SXEL10I() calls syslog()");
    is(tap_ev_arg(ev, "priority"), LOG_ERR,             "SXEL10I() maps to LOG_ERR syslog level");
    is_eq(tap_ev_arg(ev, "logline"), expected,          "SXEL10I() is logged correctly");

    this->id = 98;
    SXEL65I("SXEL65I(%s,%d,%u,%x,%.2f)", "arg1", 22, 44, 64, 3.1415926);
    snprintf(expected, sizeof expected, "T=%d     98 6 - SXEL65I(arg1,22,44,40,3.14)\n", pid);
    ev = tap_ev_queue_shift(q_syslog);
    is_eq(tap_ev_identifier(ev), "syslog",              "SXEL65I() calls syslog()");
    is(tap_ev_arg(ev, "priority"), LOG_DEBUG,           "SXEL65I() maps to LOG_DEBUG syslog level");
    is_eq(tap_ev_arg(ev, "logline"), expected,          "SXEL65I() is logged correctly");

    sxe_log_hook_buffer_prefix(NULL); /* For coverage */
    (void)argc;
    (void)argv;

    return exit_status();
}