diff options
author | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2018-03-14 12:06:34 +0100 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2018-03-16 10:12:50 +0100 |
commit | 1fd8edb53aa5894e9b8cbec87376ecce660d3087 (patch) | |
tree | cc9b092bf3411c4dc061ff069055973006035f2b /src/test | |
parent | a6dcd22976a10d7733de91aca240427c5def1bc9 (diff) | |
download | systemd-1fd8edb53aa5894e9b8cbec87376ecce660d3087.tar.gz |
test-umount: add a simple test for swap_list_get()
The implementation seems buggy:
/* test_swap_list("/home/zbyszek/src/systemd/test/test-umount/example.swaps") */
path=0 o= f=0x0 try-ro=no dev=0:0
path=/some/swapfile2 o= f=0x0 try-ro=no dev=0:0
path=/some/swapfile o= f=0x0 try-ro=no dev=0:0
path=/dev/dm-2 o= f=0x0 try-ro=no dev=0:0
Diffstat (limited to 'src/test')
-rw-r--r-- | src/test/test-umount.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/test/test-umount.c b/src/test/test-umount.c index dfafc71acf..e1d56291ac 100644 --- a/src/test/test-umount.c +++ b/src/test/test-umount.c @@ -24,6 +24,24 @@ static void test_mount_points_list(const char *fname) { major(m->devnum), minor(m->devnum)); } +static void test_swap_list(const char *fname) { + _cleanup_(mount_points_list_free) LIST_HEAD(MountPoint, mp_list_head); + MountPoint *m; + + log_info("/* %s(\"%s\") */", __func__, fname ?: "/proc/self/mountinfo"); + + LIST_HEAD_INIT(mp_list_head); + assert_se(swap_list_get(fname, &mp_list_head) >= 0); + + LIST_FOREACH(mount_point, m, mp_list_head) + log_debug("path=%s o=%s f=0x%lx try-ro=%s dev=%u:%u", + m->path, + strempty(m->remount_options), + m->remount_flags, + yes_no(m->try_remount_ro), + major(m->devnum), minor(m->devnum)); +} + int main(int argc, char **argv) { log_set_max_level(LOG_DEBUG); log_parse_environment(); @@ -33,4 +51,7 @@ int main(int argc, char **argv) { test_mount_points_list(get_testdata_dir("/test-umount/empty.mountinfo")); test_mount_points_list(get_testdata_dir("/test-umount/garbled.mountinfo")); test_mount_points_list(get_testdata_dir("/test-umount/rhbug-1554943.mountinfo")); + + test_swap_list(NULL); + test_swap_list(get_testdata_dir("/test-umount/example.swaps")); } |