From dbd175734a01f4c0b514bda21192bafe45cf7ddc Mon Sep 17 00:00:00 2001 From: Qu Wenruo Date: Wed, 10 Jan 2024 13:23:32 +1030 Subject: [PATCH] btrfs-progs: cli-tests: add test case for return value of "btrfs subvlume create" The test case would check if "btrfs subvolume create": - Report error on an existing path - Still report error if mulitple paths are given and one of them already exists - For above case, still created a subvolume for the good parameter Signed-off-by: Qu Wenruo Signed-off-by: David Sterba --- .../025-subvolume-create-failures/test.sh | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100755 tests/cli-tests/025-subvolume-create-failures/test.sh diff --git a/tests/cli-tests/025-subvolume-create-failures/test.sh b/tests/cli-tests/025-subvolume-create-failures/test.sh new file mode 100755 index 00000000..1f9c915b --- /dev/null +++ b/tests/cli-tests/025-subvolume-create-failures/test.sh @@ -0,0 +1,31 @@ +#!/bin/bash +# Create subvolume failure cases to make sure the return value is correct + +source "$TEST_TOP/common" || exit + +setup_root_helper +prepare_test_dev + +run_check_mkfs_test_dev +run_check_mount_test_dev + +# Create one subvolume and one file as place holder for later subvolume +# creation to fail. +run_check $SUDO_HELPER "$TOP/btrfs" subvolume create "$TEST_MNT/subv1" +run_check $SUDO_HELPER touch "$TEST_MNT/subv2" + +# Using existing path to create a subvolume must fail +run_mustfail "should report error when target path already exists" \ + $SUDO_HELPER "$TOP/btrfs" subvolume create "$TEST_MNT/subv1" + +run_mustfail "should report error when target path already exists" \ + $SUDO_HELPER "$TOP/btrfs" subvolume create "$TEST_MNT/subv2" + +# Using multiple subvolumes in one create go, the good one "subv3" should be created +run_mustfail "should report error when target path already exists" \ + $SUDO_HELPER "$TOP/btrfs" subvolume create \ + "$TEST_MNT/subv1" "$TEST_MNT/subv2" "$TEST_MNT/subv3" + +run_check $SUDO_HELPER stat "$TEST_MNT/subv3" + +run_check_umount_test_dev