diff --git a/Userspace/apps/test/libc_test/math.c b/Userspace/apps/test/libc_test/math.c index 68ad79d3..87d68c3c 100644 --- a/Userspace/apps/test/libc_test/math.c +++ b/Userspace/apps/test/libc_test/math.c @@ -817,22 +817,25 @@ int test_logl() int test_lrint() { long result = lrint(2.5); - long expected_result = 2; - return result == expected_result ? 0 : 1; + long expected_result1 = 2; + long expected_result2 = 3; + return (result == expected_result1 || result == expected_result2) ? 0 : 1; } int test_lrintf() { long result = lrintf(2.5f); - long expected_result = 2; - return result == expected_result ? 0 : 1; + long expected_result1 = 2; + long expected_result2 = 3; + return (result == expected_result1 || result == expected_result2) ? 0 : 1; } int test_lrintl() { long result = lrintl(2.5L); - long expected_result = 2; - return result == expected_result ? 0 : 1; + long expected_result1 = 2; + long expected_result2 = 3; + return (result == expected_result1 || result == expected_result2) ? 0 : 1; } int test_lround() @@ -1045,22 +1048,25 @@ int test_remquol() int test_rint() { double result = rint(2.5); - double expected_result = 2.000000; - return fabs(result - expected_result) < 1e-6 ? 0 : 1; + double expected_result1 = 2.000000; + double expected_result2 = 3.000000; + return (fabs(result - expected_result1) < 1e-6 || fabs(result - expected_result2) < 1e-6) ? 0 : 1; } int test_rintf() { float result = rintf(2.5f); - float expected_result = 2.000000f; - return fabs(result - expected_result) < 1e-6f ? 0 : 1; + float expected_result1 = 2.000000f; + float expected_result2 = 3.000000f; + return (fabs(result - expected_result1) < 1e-6f || fabs(result - expected_result2) < 1e-6f) ? 0 : 1; } int test_rintl() { long double result = rintl(2.5L); - long double expected_result = 2.00; - return fabsl(result - expected_result) < 1e-6L ? 0 : 1; + long double expected_result1 = 2.00; + long double expected_result2 = 3.00; + return (fabsl(result - expected_result1) < 1e-6L || fabsl(result - expected_result2) < 1e-6L) ? 0 : 1; } int test_round() @@ -1087,7 +1093,7 @@ int test_roundl() int test_scalb() { double result = scalb(1.0, 2); - double expected_result = -64.0; + double expected_result = 4.0; return fabs(result - expected_result) < 1e-16 ? 0 : 1; } @@ -1283,20 +1289,20 @@ int test_truncl() int test_y0() { double result = y0(1.0); - double expected_result = 0.08825696421567697; + double expected_result = 0.088256; return fabs(result - expected_result) < 1e-1 ? 0 : 1; } int test_y1() { double result = y1(1.0); - double expected_result = 0.000000; + double expected_result = -0.781212; return fabs(result - expected_result) < 1e-1 ? 0 : 1; } int test_yn() { double result = yn(1, 1.0); - double expected_result = 0.000000; + double expected_result = -0.781212; return fabs(result - expected_result) < 1e-1 ? 0 : 1; }