]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
test: move several test cases to test-tmpfile-util.c 39708/head
authorYu Watanabe <watanabe.yu+github@gmail.com>
Wed, 12 Nov 2025 22:46:13 +0000 (07:46 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Thu, 13 Nov 2025 00:19:56 +0000 (09:19 +0900)
src/test/test-fileio.c
src/test/test-tmpfile-util.c

index 0c9346ff64fcd6981f664fce5ae0379fbe4bb571..c5f014c63019ddb5abc2b9bca56079db47c0a42c 100644 (file)
@@ -260,62 +260,6 @@ TEST(search_and_fopen_nulstr) {
         ASSERT_ERROR(search_and_fopen_nulstr(bn, "re", NULL, dirs, &f, &p), ENOENT);
 }
 
-TEST(writing_tmpfile) {
-        _cleanup_(unlink_tempfilep) char name[] = "/tmp/test-systemd_writing_tmpfile.XXXXXX";
-        _cleanup_free_ char *contents = NULL;
-        size_t size;
-        _cleanup_close_ int fd = -EBADF;
-
-        struct iovec iov[] = {
-                IOVEC_MAKE_STRING("abc\n"),
-                IOVEC_MAKE_STRING(ALPHANUMERICAL "\n"),
-                IOVEC_MAKE_STRING(""),
-        };
-
-        ASSERT_OK(fd = mkostemp_safe(name));
-
-        ASSERT_OK_ERRNO(writev(fd, iov, 3));
-
-        ASSERT_OK(read_full_file(name, &contents, &size));
-        ASSERT_STREQ(contents, "abc\n" ALPHANUMERICAL "\n");
-}
-
-TEST(tempfn) {
-        char *ret = NULL, *p;
-
-        ASSERT_OK(tempfn_xxxxxx("/foo/bar/waldo", NULL, &ret));
-        ASSERT_STREQ(ret, "/foo/bar/.#waldoXXXXXX");
-        free(ret);
-
-        ASSERT_OK(tempfn_xxxxxx("/foo/bar/waldo", "[miau]", &ret));
-        ASSERT_STREQ(ret, "/foo/bar/.#[miau]waldoXXXXXX");
-        free(ret);
-
-        ASSERT_OK(tempfn_random("/foo/bar/waldo", NULL, &ret));
-        ASSERT_NOT_NULL(p = startswith(ret, "/foo/bar/.#waldo"));
-        ASSERT_EQ(strlen(p), 16U);
-        ASSERT_TRUE(in_charset(p, "0123456789abcdef"));
-        free(ret);
-
-        ASSERT_OK(tempfn_random("/foo/bar/waldo", "[wuff]", &ret));
-        ASSERT_NOT_NULL(p = startswith(ret, "/foo/bar/.#[wuff]waldo"));
-        ASSERT_EQ(strlen(p), 16U);
-        ASSERT_TRUE(in_charset(p, "0123456789abcdef"));
-        free(ret);
-
-        ASSERT_OK(tempfn_random_child("/foo/bar/waldo", NULL, &ret));
-        ASSERT_NOT_NULL(p = startswith(ret, "/foo/bar/waldo/.#"));
-        ASSERT_EQ(strlen(p), 16U);
-        ASSERT_TRUE(in_charset(p, "0123456789abcdef"));
-        free(ret);
-
-        ASSERT_OK(tempfn_random_child("/foo/bar/waldo", "[kikiriki]", &ret));
-        ASSERT_NOT_NULL(p = startswith(ret, "/foo/bar/waldo/.#[kikiriki]"));
-        ASSERT_EQ(strlen(p), 16U);
-        ASSERT_TRUE(in_charset(p, "0123456789abcdef"));
-        free(ret);
-}
-
 static const char chars[] =
         "Aąę„”\n루\377";
 
index cd46716516fe248cdd59fab0d9f6884e5cc7fada..87a54abb5be3de8e3be058fcd2d9e4c675015265 100644 (file)
@@ -1,5 +1,6 @@
 /* SPDX-License-Identifier: LGPL-2.1-or-later */
 
+#include <stdio.h>
 #include <stdlib.h>
 #include <unistd.h>
 
@@ -10,6 +11,7 @@
 #include "fileio.h"
 #include "format-util.h"
 #include "fs-util.h"
+#include "iovec-util.h"
 #include "log.h"
 #include "path-util.h"
 #include "process-util.h"
 #include "tests.h"
 #include "tmpfile-util.h"
 
+TEST(writing_tmpfile) {
+        _cleanup_(unlink_tempfilep) char name[] = "/tmp/test-systemd_writing_tmpfile.XXXXXX";
+        _cleanup_free_ char *contents = NULL;
+        size_t size;
+        _cleanup_close_ int fd = -EBADF;
+
+        struct iovec iov[] = {
+                IOVEC_MAKE_STRING("abc\n"),
+                IOVEC_MAKE_STRING(ALPHANUMERICAL "\n"),
+                IOVEC_MAKE_STRING(""),
+        };
+
+        ASSERT_OK(fd = mkostemp_safe(name));
+
+        ASSERT_OK_ERRNO(writev(fd, iov, 3));
+
+        ASSERT_OK(read_full_file(name, &contents, &size));
+        ASSERT_STREQ(contents, "abc\n" ALPHANUMERICAL "\n");
+}
+
+TEST(tempfn) {
+        char *ret = NULL, *p;
+
+        ASSERT_OK(tempfn_xxxxxx("/foo/bar/waldo", NULL, &ret));
+        ASSERT_STREQ(ret, "/foo/bar/.#waldoXXXXXX");
+        free(ret);
+
+        ASSERT_OK(tempfn_xxxxxx("/foo/bar/waldo", "[miau]", &ret));
+        ASSERT_STREQ(ret, "/foo/bar/.#[miau]waldoXXXXXX");
+        free(ret);
+
+        ASSERT_OK(tempfn_random("/foo/bar/waldo", NULL, &ret));
+        ASSERT_NOT_NULL(p = startswith(ret, "/foo/bar/.#waldo"));
+        ASSERT_EQ(strlen(p), 16U);
+        ASSERT_TRUE(in_charset(p, "0123456789abcdef"));
+        free(ret);
+
+        ASSERT_OK(tempfn_random("/foo/bar/waldo", "[wuff]", &ret));
+        ASSERT_NOT_NULL(p = startswith(ret, "/foo/bar/.#[wuff]waldo"));
+        ASSERT_EQ(strlen(p), 16U);
+        ASSERT_TRUE(in_charset(p, "0123456789abcdef"));
+        free(ret);
+
+        ASSERT_OK(tempfn_random_child("/foo/bar/waldo", NULL, &ret));
+        ASSERT_NOT_NULL(p = startswith(ret, "/foo/bar/waldo/.#"));
+        ASSERT_EQ(strlen(p), 16U);
+        ASSERT_TRUE(in_charset(p, "0123456789abcdef"));
+        free(ret);
+
+        ASSERT_OK(tempfn_random_child("/foo/bar/waldo", "[kikiriki]", &ret));
+        ASSERT_NOT_NULL(p = startswith(ret, "/foo/bar/waldo/.#[kikiriki]"));
+        ASSERT_EQ(strlen(p), 16U);
+        ASSERT_TRUE(in_charset(p, "0123456789abcdef"));
+        free(ret);
+}
+
 static void test_tempfn_random_one(const char *p, const char *extra, const char *expect, int ret) {
         _cleanup_free_ char *s = NULL;
         int r;