+2023-04-22 Bruno Haible <bruno@clisp.org>
+
+ string-desc tests: Avoid test failure on native Windows.
+ * tests/test-string-desc.c: Include <fcntl.h>, <unistd.h>.
+ (main): Expect a file name argument. Write to this file, instead of to
+ fd 3.
+ * tests/test-string-desc.sh: Pass a file name as argument, instead of
+ using '3>'.
+ * modules/string-desc-tests (Depends-on): Add close.
+
2023-04-22 Bruno Haible <bruno@clisp.org>
threadlib, pthread-h, threads-h: Avoid mingw's libwinpthread by default.
#include "string-desc.h"
+#include <fcntl.h>
#include <stdlib.h>
#include <string.h>
+#include <unistd.h>
#include "macros.h"
int
-main (void)
+main (int argc, char *argv[])
{
+ ASSERT (argc > 1);
+ int fd3 = open (argv[1], O_RDWR | O_TRUNC | O_CREAT, 0600);
+ ASSERT (fd3 >= 0);
+
string_desc_t s0 = string_desc_new_empty ();
string_desc_t s1 = string_desc_from_c ("Hello world!");
string_desc_t s2 = string_desc_new_addr (21, "The\0quick\0brown\0\0fox");
string_desc_from_c ("llo")) == 0);
/* Test string_desc_write. */
- ASSERT (string_desc_write (3, s0) == 0);
- ASSERT (string_desc_write (3, s1) == 0);
- ASSERT (string_desc_write (3, s2) == 0);
+ ASSERT (string_desc_write (fd3, s0) == 0);
+ ASSERT (string_desc_write (fd3, s1) == 0);
+ ASSERT (string_desc_write (fd3, s2) == 0);
/* Test string_desc_fwrite. */
ASSERT (string_desc_fwrite (stdout, s0) == 0);
free (ptr);
}
+ close (fd3);
+
return 0;
}
#!/bin/sh
. "${srcdir=.}/init.sh"; path_prepend_ .
-${CHECKER} test-string-desc${EXEEXT} > test-string-desc-1.tmp 3> test-string-desc-3.tmp || Exit 1
+${CHECKER} test-string-desc${EXEEXT} test-string-desc-3.tmp > test-string-desc-1.tmp || Exit 1
printf 'Hello world!The\0quick\0brown\0\0fox\0' > test-string-desc.ok