test: Improve coverage in test-memfd-util and use ASSERT_OK() macro and friends
This commit is contained in:
parent
73a0b247c8
commit
8951706784
src/test
|
@ -1,7 +1,5 @@
|
|||
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
||||
|
||||
#include <unistd.h>
|
||||
|
||||
#include "errno-util.h"
|
||||
#include "fd-util.h"
|
||||
#include "memfd-util.h"
|
||||
|
@ -11,21 +9,30 @@
|
|||
|
||||
TEST(memfd_get_sealed) {
|
||||
#define TEST_TEXT "this is some random test text we are going to write to a memfd"
|
||||
_cleanup_close_ int fd = -EBADF;
|
||||
|
||||
fd = memfd_new_full("test-memfd-get-sealed", MFD_ALLOW_SEALING);
|
||||
_cleanup_close_ int fd = memfd_new_full("test-memfd-get-sealed", MFD_ALLOW_SEALING);
|
||||
if (fd < 0) {
|
||||
assert_se(ERRNO_IS_NOT_SUPPORTED(fd));
|
||||
return;
|
||||
ASSERT_TRUE(ERRNO_IS_NOT_SUPPORTED(fd));
|
||||
return (void) log_tests_skipped_errno(fd, "Failed to create new memfd");
|
||||
}
|
||||
|
||||
assert_se(write(fd, TEST_TEXT, strlen(TEST_TEXT)) == strlen(TEST_TEXT));
|
||||
ASSERT_OK_EQ_ERRNO(write(fd, TEST_TEXT, strlen(TEST_TEXT)), (ssize_t) strlen(TEST_TEXT));
|
||||
/* we'll leave the read offset at the end of the memfd, the fdopen_independent() descriptors should
|
||||
* start at the beginning anyway */
|
||||
|
||||
assert_se(memfd_get_sealed(fd) == 0);
|
||||
assert_se(memfd_set_sealed(fd) >= 0);
|
||||
assert_se(memfd_get_sealed(fd) > 0);
|
||||
uint64_t size, new_size;
|
||||
ASSERT_OK(memfd_get_size(fd, &size));
|
||||
ASSERT_GE(size, (uint64_t) strlen(TEST_TEXT));
|
||||
|
||||
ASSERT_OK(memfd_set_size(fd, size * 2));
|
||||
ASSERT_OK(memfd_get_size(fd, &new_size));
|
||||
ASSERT_EQ(new_size, size * 2);
|
||||
|
||||
ASSERT_OK(memfd_set_size(fd, new_size / 2));
|
||||
ASSERT_OK(memfd_get_size(fd, &size));
|
||||
ASSERT_EQ(size, new_size / 2);
|
||||
|
||||
ASSERT_OK(memfd_get_sealed(fd) == 0);
|
||||
ASSERT_OK(memfd_set_sealed(fd) >= 0);
|
||||
ASSERT_OK(memfd_get_sealed(fd) > 0);
|
||||
}
|
||||
|
||||
DEFINE_TEST_MAIN(LOG_DEBUG);
|
||||
|
|
Loading…
Reference in New Issue