Beispiel #1
0
static int read_reporter_results(TestReporter *reporter) {
    int result;
    while ((result = receive_cgreen_message(reporter->ipc)) > 0) {
        if (result == pass) {
            reporter->passes++;
        } else if (result == fail) {
            reporter->failures++;
        } else if (result == exception) {
            reporter->exceptions++;
        } else if (result == completion) {
            /* TODO: this should always be the last message; if it's not, there's a bad race */
            return FINISH_NOTIFICATION_RECEIVED;
        }
    }

    return FINISH_NOTIFICATION_NOT_RECEIVED;
}
Beispiel #2
0
static void read_reporter_results(TestReporter *reporter) {
    int completed = 0;
    int result;
    while ((result = receive_cgreen_message(reporter->ipc)) > 0) {
        if (result == pass) {
            reporter->passes++;
        } else if (result == fail) {
            reporter->failures++;
        } else if (result == completion) {
            completed = 1;
        }
    }
    if (! completed) {
        (*reporter->show_incomplete)(reporter, get_current_from_breadcrumb((CgreenBreadcrumb *)reporter->breadcrumb));
        reporter->exceptions++;
    }
}