From: Adhemerval Zanella Date: Tue, 24 Mar 2020 18:48:34 +0000 (-0300) Subject: stdlib: Move tst-system to tests-container X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c56022269f45fc7cc01806bce2cb5ed596718597;p=thirdparty%2Fglibc.git stdlib: Move tst-system to tests-container Fix some issues with different shell and error messages. Checked on x86_64-linux-gnu and i686-linux-gnu. (cherry picked from commit 4eda036f5b897fa8bc20ddd2099b5a6ed4239dc9) --- diff --git a/stdlib/Makefile b/stdlib/Makefile index 32f6050eccc..4b2bdb08af4 100644 --- a/stdlib/Makefile +++ b/stdlib/Makefile @@ -70,7 +70,7 @@ tests := tst-strtol tst-strtod testmb testrand testsort testdiv \ test-canon test-canon2 tst-strtoll tst-environ \ tst-xpg-basename tst-random tst-random2 tst-bsearch \ tst-limits tst-rand48 bug-strtod tst-setcontext \ - tst-setcontext2 test-a64l tst-qsort tst-system testmb2 \ + tst-setcontext2 test-a64l tst-qsort testmb2 \ bug-strtod2 tst-atof1 tst-atof2 tst-strtod2 \ tst-rand48-2 tst-makecontext tst-strtod5 \ tst-qsort2 tst-makecontext2 tst-strtod6 tst-unsetenv1 \ @@ -92,6 +92,7 @@ tests := tst-strtol tst-strtod testmb testrand testsort testdiv \ tests-internal := tst-strtod1i tst-strtod3 tst-strtod4 tst-strtod5i \ tst-tls-atexit tst-tls-atexit-nodelete tests-static := tst-secure-getenv +tests-container := tst-system ifeq ($(build-hardcoded-path-in-tests),yes) tests += tst-empty-env diff --git a/stdlib/tst-system.c b/stdlib/tst-system.c index 09a5c05caba..8e1f23d5c97 100644 --- a/stdlib/tst-system.c +++ b/stdlib/tst-system.c @@ -88,7 +88,8 @@ do_test (void) }); support_capture_subprocess_check (&result, "system", 0, sc_allow_stderr); - char *returnerr = xasprintf ("%s: 1: %s: not found\n", + char *returnerr = xasprintf ("%s: execing %s failed: " + "No such file or directory", basename(_PATH_BSHELL), cmd); TEST_COMPARE_STRING (result.err.buffer, returnerr); free (returnerr); @@ -106,7 +107,8 @@ do_test (void) }); support_capture_subprocess_check (&result, "system", 0, sc_allow_stderr); - char *returnerr = xasprintf ("%s: 1: %s: File name too long\n", + char *returnerr = xasprintf ("%s: execing %s failed: " + "File name too long", basename(_PATH_BSHELL), cmd); TEST_COMPARE_STRING (result.err.buffer, returnerr); free (returnerr); @@ -116,7 +118,7 @@ do_test (void) struct support_capture_subprocess result; result = support_capture_subprocess (call_system, &(struct args) { - "kill -USR1 $$", 0, SIGUSR1 + "kill $$", 0, SIGTERM }); support_capture_subprocess_check (&result, "system", 0, sc_allow_none); } @@ -136,7 +138,7 @@ do_test (void) support_capture_subprocess_check (&result, "system", 0, sc_allow_none); } - TEST_COMPARE (system (":"), 0); + TEST_COMPARE (system (""), 0); return 0; }