test/logging_tests.c

changeset 54
f634f790661a
child 55
180bc6b18fec
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/test/logging_tests.c	Mon Oct 08 14:04:52 2012 +0200
     1.3 @@ -0,0 +1,38 @@
     1.4 +/*
     1.5 + *
     1.6 + */
     1.7 +
     1.8 +#include "logging_tests.h"
     1.9 +#ifndef _WIN32
    1.10 +#include <unistd.h>
    1.11 +#endif /* not _WIN32 */
    1.12 +
    1.13 +UCX_TEST_IMPLEMENT(test_ucx_logger_log) {
    1.14 +    char buffer[100];
    1.15 +#if defined _USE_GNU || defined _USE_XOPEN2K8
    1.16 +    FILE *stream = fmemopen(buffer, 100, "w");
    1.17 +#else
    1.18 +    FILE *stream = fopen("test_ucx_logger", "w+");
    1.19 +#endif /* _WIN32 */
    1.20 +    UcxLogger *logger = ucx_logger_new(stream, UCX_LOGGER_INFO);
    1.21 +    
    1.22 +    UCX_TEST_BEGIN
    1.23 +    ucx_logger_info(logger, ST("[INFO:] allright\n"));
    1.24 +    ucx_logger_trace(logger, ST("[TRACE:] dont log this!\n"));
    1.25 +    ucx_logger_error(logger, ST("[ERROR:] error!\n"));
    1.26 +#if !(defined _USE_GNU || defined _USE_XOPEN2K8)
    1.27 +    fseek(stream, 0, SEEK_SET);
    1.28 +    fread(buffer, 1, 100, stream);
    1.29 +#endif /* _WIN32 */
    1.30 +
    1.31 +    UCX_TEST_ASSERT(strncmp(buffer,
    1.32 +            "[INFO:] allright\n[ERROR:] error!\n", 33) == 0, "incorrect logs");
    1.33 +
    1.34 +    UCX_TEST_END
    1.35 +
    1.36 +    free(logger);
    1.37 +    fclose(stream);
    1.38 +#if !(defined _USE_GNU || defined _USE_XOPEN2K8)
    1.39 +    unlink("test_ucx_logger");
    1.40 +#endif
    1.41 +}

mercurial