1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-08-01 10:06:57 +03:00

support: Introduce new subdirectory for test infrastructure

The new test driver in <support/test-driver.c> has feature parity with
the old one.  The main difference is that its hooking mechanism is
based on functions and function pointers instead of macros.  This
commit also implements a new environment variable, TEST_COREDUMPS,
which disables the code which disables coredumps (that is, it enables
them if the invocation environment has not disabled them).

<test-skeleton.c> defines wrapper functions so that it is possible to
use existing macros with the new-style hook functionality.

This commit changes only a few test cases to the new test driver, to
make sure that it works as expected.
This commit is contained in:
Florian Weimer
2016-12-09 08:18:27 +01:00
parent c03073774f
commit c23de0aacb
59 changed files with 2204 additions and 968 deletions

View File

@ -3,6 +3,8 @@
#include <stdio.h>
#include <stdlib.h>
#include <support/temp_file.h>
static char *templ_filename;
// Writes template given as parameter to file,
@ -133,14 +135,18 @@ do_test (int argc, char *argv[])
return res;
}
#define TEST_FUNCTION_ARGV do_test
#define PREPARE(argc, argv) \
if (argc < 2) \
{ \
puts ("Command line: progname template_filename_full_path"); \
exit (1); \
} \
add_temp_file (argv[1])
static void
do_prepare (int argc, char **argv)
{
if (argc < 2)
{
puts ("Command line: progname template_filename_full_path");
exit (1);
}
add_temp_file (argv[1]);
}
#define PREPARE do_prepare
#define TEST_FUNCTION do_test (argc, argv)
#include "../test-skeleton.c"
#include <support/test-driver.c>