Example #1
0
void ok(int pass, char *fmt, ...) {
	va_list args;

	va_start(args, fmt);
	okv(pass, fmt, args);
	va_end(args);
}
Example #2
0
/*
 * Takes an expected double and a seen double and assumes the test passes if
 * those two numbers are within delta of each other.
 */
int
is_double(double wanted, double seen, double epsilon, const char *format, ...)
{
    va_list args;
    int success;

    va_start(args, format);
    fflush(stderr);
    if ((isnan(wanted) && isnan(seen))
        || (isinf(wanted) && isinf(wanted) == isinf(seen))
        || fabs(wanted - seen) <= epsilon) {
        success = 1;
        okv(1, format, args);
    } else {
        success = 0;
        diag("wanted: %g", wanted);
        diag("  seen: %g", seen);
        okv(0, format, args);
    }
    return success;
}
Example #3
0
void is_int(long wanted, long seen, const char *fmt, ...) {
	va_list args;
	if (fmt) {
		va_start(args, fmt);
		okv(wanted == seen, fmt, args);
		va_end(args);
	} else {
		ok(wanted == seen, NULL);
	}
	if (wanted != seen) {
		diag("wanted: %ld", wanted);
		diag("got   : %ld", seen);
	}
}
Example #4
0
void ok_block(unsigned long count, int pass, const char *fmt, ...) {
	va_list args;
	va_list copy;

	if (count == 0) {
		return;
	}

	va_start(args, fmt);
	while (count--) {
		va_copy(copy, args);
		okv(pass, fmt, copy);
		va_end(copy);
	}
	va_end(args);
}
Example #5
0
void is_string(const char *wanted, const char *seen, const char *fmt, ...) {
	int pass;
	va_list args;

	pass = !strcmp(wanted,seen);
	if (fmt) {
		va_start(args, fmt);
		okv(pass, fmt, args);
		va_end(args);
	} else {
		ok(wanted == seen, NULL);
	}
	if (!pass) {
		diag("wanted: %s", wanted);
		diag("got   : %s", seen);
	}
}
Example #6
0
void is_double(double wanted, double seen, double eps, const char *fmt, ...) {
	int pass;
	va_list args;

	pass = fabs(wanted - seen) <= eps;
	if (fmt) {
		va_start(args, fmt);
		okv(pass, fmt, args);
		va_end(args);
	} else {
		ok(wanted == seen, NULL);
	}
	if (!pass) {
		diag("wanted: %f", wanted);
		diag("got   : %f", seen);
	}
}