From: Gabriel F. T. Gomes Date: Thu, 1 Nov 2018 18:02:47 +0000 (-0300) Subject: Convert tst-efgcvt to the new test framework X-Git-Tag: glibc-2.29~317 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=968ed5301d0921e6ea33dafd60e4a4208be6a6f4;p=thirdparty%2Fglibc.git Convert tst-efgcvt to the new test framework The function do_test, in tst-efgcvt.c, increments an error counter for each error that it finds, then returns it to the test framework. However, the test framework does not expect an error count as return, but zero for a passing test, one for a failing test, or 77 for an unsupported test. Alternatively, the framework provides the function support_record_failure that records errors, which then allows the test program to return zero unconditionally. This patch removes the error counter, replaces each increment of the counter with a call to support_record_failure, and makes do_test unconditionally return zero. Tested for powerpc64le (as-is and with a patched results table to check that the error reporting actually works). * misc/tst-efgcvt.c: Include support/check.h and support/test-driver.c. Do not include test-skeleton.c. (error_count): Remove. (output_error): Replace increments to error_count with calls to support_record_failure. (output_r_error): Likewise. (special): Likewise. (do_test): Unconditionally return zero. (TEST_FUNCTION): Remove. --- diff --git a/ChangeLog b/ChangeLog index 1153c53ec4a..7d723f5e7b2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +2018-11-09 Gabriel F. T. Gomes + + * misc/tst-efgcvt.c: Include support/check.h and + support/test-driver.c. Do not include test-skeleton.c. + (error_count): Remove. + (output_error): Replace increments to error_count with calls to + support_record_failure. + (output_r_error): Likewise. + (special): Likewise. + (do_test): Unconditionally return zero. + (TEST_FUNCTION): Remove. + 2018-11-09 Joseph Myers * conform/Makefile ($(conformtest-header-tests)): Create $(@D), diff --git a/misc/tst-efgcvt.c b/misc/tst-efgcvt.c index bb716d5198d..5a598f49e3e 100644 --- a/misc/tst-efgcvt.c +++ b/misc/tst-efgcvt.c @@ -25,7 +25,7 @@ #include #include -int error_count; +#include typedef struct { @@ -101,7 +101,7 @@ output_error (const char *name, double value, int ndigit, res_p, res_decpt, res_sign); printf ("Should be p: \"%s\", decpt: %d, sign: %d\n", exp_p, exp_decpt, exp_sign); - ++error_count; + support_record_failure (); } @@ -116,7 +116,7 @@ output_r_error (const char *name, double value, int ndigit, res_p, res_decpt, res_sign, res_return); printf ("Should be buf: \"%s\", decpt: %d, sign: %d\n", exp_p, exp_decpt, exp_sign); - ++error_count; + support_record_failure (); } static void @@ -189,13 +189,13 @@ special (void) if (res == 0) { printf ("ecvt_r with a too small buffer was succesful.\n"); - ++error_count; + support_record_failure (); } res = fcvt_r (123.456, 10, &decpt, &sign, buf, 1); if (res == 0) { printf ("fcvt_r with a too small buffer was succesful.\n"); - ++error_count; + support_record_failure (); } } @@ -209,8 +209,7 @@ do_test (void) test_r (fcvt_tests, fcvt_r, "fcvt_r"); special (); - return error_count; + return 0; } -#define TEST_FUNCTION do_test () -#include "../test-skeleton.c" +#include