summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Teigland <teigland@redhat.com>2013-08-22 15:32:04 -0500
committerDavid Teigland <teigland@redhat.com>2013-08-23 14:10:29 -0500
commit8c511122f4a0be6f7d8ac0db7d845cd44b16a774 (patch)
tree9f22a91fd3313092f2da5df1c3782095fd8f2314
parent72d6bdd6b960d946039818684c125c3c31b7ae5e (diff)
downloadlvm2-8c511122f4a0be6f7d8ac0db7d845cd44b16a774.tar.gz
test: add vg-name-from-env
vg name should come from env var LVM_VG_NAME for commands that take vg name and lv name, but vg name is not specified on command line.
-rw-r--r--test/shell/vg-name-from-env.sh104
1 files changed, 104 insertions, 0 deletions
diff --git a/test/shell/vg-name-from-env.sh b/test/shell/vg-name-from-env.sh
new file mode 100644
index 000000000..c8e8c7683
--- /dev/null
+++ b/test/shell/vg-name-from-env.sh
@@ -0,0 +1,104 @@
+#!/bin/sh
+# Copyright (C) 2008-2013 Red Hat, Inc. All rights reserved.
+#
+# This copyrighted material is made available to anyone wishing to use,
+# modify, copy, or redistribute it subject to the terms and conditions
+# of the GNU General Public License v.2.
+
+test_description='Test the vg name for an lv from env var'
+
+. lib/test
+
+aux prepare_devs 2
+
+pvcreate $dev1
+pvcreate $dev2
+
+vgcreate $vg1 $dev1
+vgcreate $vg2 $dev2
+
+export LVM_VG_NAME=$vg1
+
+# should use env
+lvcreate -n $lv1 -l 2
+lvcreate -n $lv3 -l 2
+
+lvcreate -n $lv2 -l 2 $vg2
+lvcreate -n $lv4 -l 2 $vg2
+
+lvs >err
+grep $lv1 err
+grep $lv3 err
+grep $lv2 err
+grep $lv4 err
+
+not lvs $vg1 >err
+not grep $lv1 err
+not grep $lv3 err
+not grep $lv2 err
+not grep $lv4 err
+
+not lvs $vg2 >err
+not grep $lv1 err
+not grep $lv3 err
+not grep $lv2 err
+not grep $lv4 err
+
+lvs $lv1 >err
+grep $lv1 err
+not grep $lv3 err
+not grep $lv2 err
+not grep $lv4 err
+
+lvs $lv1 $lv3 >err
+grep $lv1 err
+grep $lv3 err
+not grep $lv2 err
+not grep $lv4 err
+
+# should use env and fail to fine lv4 in vg1
+not lvs $lv4 >err
+not grep $lv1 err
+not grep $lv3 err
+not grep $lv2 err
+not grep $lv4 err
+
+lvs $vg2/$lv4 >err
+not grep $lv1 err
+not grep $lv3 err
+not grep $lv2 err
+grep $lv4 err
+
+lvs $vg2/$lv2 $vg2/$lv4 >err
+not grep $lv1 err
+not grep $lv3 err
+grep $lv2 err
+grep $lv4 err
+
+# should use env
+lvchange -an $lv3
+lvremove $lv3
+not lvremove $lv4
+
+lvs >err
+grep $lv1 err
+not grep $lv3 err
+grep $lv2 err
+grep $lv4 err
+
+# should use env
+lvcreate -n $lv3 -l 2
+lvchange --addtag foo $lv3
+lvchange -an $lv3
+
+# lvremove by tag should apply to all vgs, not env vg
+lvchange --addtag foo $vg2/$lv4
+lvchange -an $vg2/$lv4
+lvremove @foo
+
+lvs >err
+grep $lv1 err
+not grep $lv3 err
+grep $lv2 err
+not grep $lv4 err
+