#include "test.h"
#include <stdlib.h>
static struct {
int x, y, div, mod;
} t[] = {
2147483647, 2147483646, 1, 1,
2147483647, 2147483647, 1, 0,
2147483647, 536870908, 4, 15,
-2147483648, 2147483647, -1, -1,
-2147483647, -1, 2147483647, 0,
2147483647, 1, 2147483647, 0,
};
int div_test(void)
{
int x, y;
int i;
div_t divResult;
for (i = 0; i < sizeof t/sizeof *t; i++) {
x = t[i].x;
y = t[i].y;
divResult = div(x, y);
if (divResult.quot != t[i].div)
t_error("div %d/%d want %d got %d\n", x, y, t[i].div, divResult.quot);
if (divResult.rem != t[i].mod)
t_error("mod %d%%%d want %d got %d\n", x, y, t[i].mod, divResult.rem);
}
return t_status;
}