1BEGIN {
2    printf("#include \"stdlib_tests.h\"\n\n");
3    for ( i = 0; i < 256; i++ ) {
4        printf("void t_sqrt_%d()\n{\n",i);
5        printf("    Assert(isqrt(%d) == %d, \"Integer square root of %d should be %d\");\n", i, (sqrt(i)), i, (sqrt(i)));
6        printf("}\n\n");
7    }
8    for ( i = 1023; i < 16384; i+= 223 ) {
9        printf("void t_sqrt_%d()\n{\n",i);
10#	printf("printf(\"%%d\\n\",isqrt(%d));\n",i);
11        printf("    Assert(isqrt(%d) == %d, \"Integer square root of %d should be %d\");\n", i, (sqrt(i)), i, (sqrt(i)));
12        printf("}\n\n");
13    }
14
15    printf("int test_isqrt()\n{\n");
16    printf("    suite_setup(\"isqrt tests\");\n");
17    for ( i = 0; i < 256; i++ ) {
18        printf("    suite_add_test(t_sqrt_%d);\n",i);
19    }
20    printf("    return suite_run();\n");
21    printf("}\n\n");
22
23    printf("int test_isqrt2()\n{\n");
24    printf("    suite_setup(\"isqrt tests - 2\");\n");
25    for ( i = 1023; i < 16384; i+= 223 ) {
26        printf("    suite_add_test(t_sqrt_%d);\n",i);
27    }
28    printf("    return suite_run();\n");
29    printf("}\n\n");
30}
31