Commit b53d675d authored by Greg Williams's avatar Greg Williams
Browse files

Changed back to log to stderr, since logging to stdout is causing tests and/or...

Changed back to log to stderr, since logging to stdout is causing tests and/or build to crash. Removed temp sleeps in socket tests, since appear to be unnecessary on Linux.
parent 3af27858
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -104,6 +104,5 @@
    - "#{Ceedling.load_path}"
  :enabled:
    - stdout_ide_tests_report
    - teamcity_tests_report
    - module_generator
...
+29 −18
Original line number Diff line number Diff line
@@ -24,53 +24,64 @@
#include <string.h>

static char LogFile[256] = "";
bool LogToStdOut = true;
bool LogToConsole = true;

void KineticLogger_Init(const char* logFile)
{
    LogToStdOut = true;
    LogToConsole = true;
    if (logFile != NULL)
    {
        FILE* fd;
        strcpy(LogFile, logFile);
        fd = fopen(LogFile, "w");
        if (fd > 0)
        if (fd != stdout && fd != stderr && fd != stdin)
        {
            fclose(fd);
            LogToStdOut = false;
            LogToConsole = false;
        }
        else
        {
            KineticLogger_LogPrintf("Failed to initialize logger with file: fopen('%s') => fd=%d", logFile, fd);
            fprintf(stderr, "Failed to initialize logger with file: fopen('%s') => fd=%zd", logFile, fd);
            fflush(fd);
        }
    }
}

void KineticLogger_Log(const char* message)
{
    if (LogToStdOut)
    FILE* fd = NULL;
    if (message == NULL)
    {
        fprintf(stdout, "%s\n", message);
        return;
    }
    else if (LogFile != NULL)

    fd = LogToConsole ? stderr : fopen(LogFile, "a");
    if (fd >= 0)
    {
        FILE* fd = fopen(LogFile, "a");
        fprintf(fd, "%s\n", message);
        fflush(fd);

        // Don't close std/already-opened streams
        if (LogFile != NULL && fd != stdout && fd != stderr && fd != stdin)
        {
            fclose(fd);
        }
    }
}

int KineticLogger_LogPrintf(const char* format, ...)
{
    int result = -1;

    if (format != NULL)
    {
        va_list arg_ptr;
        char buffer[1024];
   int result;

        va_start(arg_ptr, format);
        result = vsprintf(buffer, format, arg_ptr);
   va_end(arg_ptr);

        KineticLogger_Log(buffer);
        va_end(arg_ptr);
    }

   return(result);
}
+3 −3
Original line number Diff line number Diff line
@@ -21,7 +21,7 @@
#include "unity_helper.h"
#include "kinetic_logger.h"

extern bool LogToStdOut;
extern bool LogToConsole;

void setUp(void)
{
@@ -41,14 +41,14 @@ void test_KineticLogger_KINETIC_LOG_FILE_should_be_defined_properly(void)
void test_KineticLogger_Init_should_log_to_STDOUT_by_default(void)
{
    KineticLogger_Init(NULL);
    TEST_ASSERT_TRUE(LogToStdOut);
    TEST_ASSERT_TRUE(LogToConsole);
}

void test_KineticLogger_Init_should_initialize_the_logger_with_specified_output_file(void)
{
    KineticLogger_Init(TEST_LOG_FILE);

    TEST_ASSERT_FALSE(LogToStdOut);
    TEST_ASSERT_FALSE(LogToConsole);
    TEST_ASSERT_FILE_EXISTS(TEST_LOG_FILE);
}

+1 −3
Original line number Diff line number Diff line
@@ -47,7 +47,6 @@ void setUp(void)
{
    FileDesc = -1;
    pProto = NULL;
    sleep(2);
    if (!LogInitialized)
    {
        KineticLogger_Init(NULL);//"test_kinetic_socket.log");
@@ -70,7 +69,6 @@ void tearDown(void)
        LOG("Shutting down socket...");
        KineticSocket_Close(FileDesc);
        FileDesc = 0;
        sleep(2);
    }
}