1# CDDL HEADER START 2# 3# The contents of this file are subject to the terms of the 4# Common Development and Distribution License (the "License"). 5# You may not use this file except in compliance with the License. 6# 7# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 8# or http://www.opensolaris.org/os/licensing. 9# See the License for the specific language governing permissions 10# and limitations under the License. 11# 12# When distributing Covered Code, include this CDDL HEADER in each 13# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 14# If applicable, add the following below this CDDL HEADER, with the 15# fields enclosed by brackets "[]" replaced with your own identifying 16# information: Portions Copyright [yyyy] [name of copyright owner] 17# 18# CDDL HEADER END 19# 20 21# 22# Copyright 2012 Spectra Logic. All rights reserved. 23# Use is subject to license terms. 24# 25 26 27atf_test_case zfs_clone_001_neg cleanup 28zfs_clone_001_neg_head() 29{ 30 atf_set "descr" "Badly-formed 'zfs clone' with inapplicable scenariosshould return an error." 31 atf_set "require.progs" "ksh93 zfs" 32} 33zfs_clone_001_neg_body() 34{ 35 . $(atf_get_srcdir)/../../../include/default.cfg 36 . $(atf_get_srcdir)/zfs_clone.cfg 37 38 verify_disk_count "$DISKS" 1 39 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed" 40 ksh93 $(atf_get_srcdir)/zfs_clone_001_neg.ksh || atf_fail "Testcase failed" 41} 42zfs_clone_001_neg_cleanup() 43{ 44 . $(atf_get_srcdir)/../../../include/default.cfg 45 . $(atf_get_srcdir)/zfs_clone.cfg 46 47 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed" 48} 49 50 51atf_test_case zfs_clone_002_pos cleanup 52zfs_clone_002_pos_head() 53{ 54 atf_set "descr" "clone -p should work as expected." 55 atf_set "require.progs" "ksh93 zfs" 56} 57zfs_clone_002_pos_body() 58{ 59 . $(atf_get_srcdir)/../../../include/default.cfg 60 . $(atf_get_srcdir)/zfs_clone.cfg 61 62 verify_disk_count "$DISKS" 1 63 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed" 64 ksh93 $(atf_get_srcdir)/zfs_clone_002_pos.ksh || atf_fail "Testcase failed" 65} 66zfs_clone_002_pos_cleanup() 67{ 68 . $(atf_get_srcdir)/../../../include/default.cfg 69 . $(atf_get_srcdir)/zfs_clone.cfg 70 71 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed" 72} 73 74 75atf_test_case zfs_clone_003_pos cleanup 76zfs_clone_003_pos_head() 77{ 78 atf_set "descr" "'zfs clone -o property=value filesystem' can successfully createa ZFS clone filesystem with correct property set." 79 atf_set "require.progs" "ksh93 zfs" 80} 81zfs_clone_003_pos_body() 82{ 83 . $(atf_get_srcdir)/../../../include/default.cfg 84 . $(atf_get_srcdir)/zfs_clone.cfg 85 86 verify_disk_count "$DISKS" 1 87 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed" 88 ksh93 $(atf_get_srcdir)/zfs_clone_003_pos.ksh || atf_fail "Testcase failed" 89} 90zfs_clone_003_pos_cleanup() 91{ 92 . $(atf_get_srcdir)/../../../include/default.cfg 93 . $(atf_get_srcdir)/zfs_clone.cfg 94 95 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed" 96} 97 98 99atf_test_case zfs_clone_004_pos cleanup 100zfs_clone_004_pos_head() 101{ 102 atf_set "descr" "'zfs clone -o property=value filesystem' can successfully createa ZFS clone filesystem with multiple properties set." 103 atf_set "require.progs" "ksh93 zfs" 104} 105zfs_clone_004_pos_body() 106{ 107 . $(atf_get_srcdir)/../../../include/default.cfg 108 . $(atf_get_srcdir)/zfs_clone.cfg 109 110 verify_disk_count "$DISKS" 1 111 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed" 112 ksh93 $(atf_get_srcdir)/zfs_clone_004_pos.ksh || atf_fail "Testcase failed" 113} 114zfs_clone_004_pos_cleanup() 115{ 116 . $(atf_get_srcdir)/../../../include/default.cfg 117 . $(atf_get_srcdir)/zfs_clone.cfg 118 119 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed" 120} 121 122 123atf_test_case zfs_clone_005_pos cleanup 124zfs_clone_005_pos_head() 125{ 126 atf_set "descr" "'zfs clone -o property=value -V size volume' can successfullycreate a ZFS clone volume with correct property set." 127 atf_set "require.progs" "ksh93 zfs" 128} 129zfs_clone_005_pos_body() 130{ 131 . $(atf_get_srcdir)/../../../include/default.cfg 132 . $(atf_get_srcdir)/zfs_clone.cfg 133 134 verify_disk_count "$DISKS" 1 135 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed" 136 ksh93 $(atf_get_srcdir)/zfs_clone_005_pos.ksh || atf_fail "Testcase failed" 137} 138zfs_clone_005_pos_cleanup() 139{ 140 . $(atf_get_srcdir)/../../../include/default.cfg 141 . $(atf_get_srcdir)/zfs_clone.cfg 142 143 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed" 144} 145 146 147atf_test_case zfs_clone_006_pos cleanup 148zfs_clone_006_pos_head() 149{ 150 atf_set "descr" "'zfs clone -o property=value volume' can successfullycreate a ZFS clone volume with multiple correct properties set." 151 atf_set "require.progs" "ksh93 zfs" 152} 153zfs_clone_006_pos_body() 154{ 155 . $(atf_get_srcdir)/../../../include/default.cfg 156 . $(atf_get_srcdir)/zfs_clone.cfg 157 158 verify_disk_count "$DISKS" 1 159 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed" 160 ksh93 $(atf_get_srcdir)/zfs_clone_006_pos.ksh || atf_fail "Testcase failed" 161} 162zfs_clone_006_pos_cleanup() 163{ 164 . $(atf_get_srcdir)/../../../include/default.cfg 165 . $(atf_get_srcdir)/zfs_clone.cfg 166 167 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed" 168} 169 170 171atf_test_case zfs_clone_007_pos cleanup 172zfs_clone_007_pos_head() 173{ 174 atf_set "descr" "'zfs clone -o version=' could upgrade version,but downgrade is denied." 175 atf_set "require.progs" "ksh93 zfs" 176} 177zfs_clone_007_pos_body() 178{ 179 . $(atf_get_srcdir)/../../../include/default.cfg 180 . $(atf_get_srcdir)/zfs_clone.cfg 181 182 verify_disk_count "$DISKS" 1 183 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed" 184 ksh93 $(atf_get_srcdir)/zfs_clone_007_pos.ksh || atf_fail "Testcase failed" 185} 186zfs_clone_007_pos_cleanup() 187{ 188 . $(atf_get_srcdir)/../../../include/default.cfg 189 . $(atf_get_srcdir)/zfs_clone.cfg 190 191 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed" 192} 193 194 195atf_test_case zfs_clone_008_neg cleanup 196zfs_clone_008_neg_head() 197{ 198 atf_set "descr" "Verify 'zfs clone -o <filesystem>' fails with bad <filesystem> argument." 199 atf_set "require.progs" "ksh93 zfs" 200} 201zfs_clone_008_neg_body() 202{ 203 . $(atf_get_srcdir)/../../../include/default.cfg 204 . $(atf_get_srcdir)/zfs_clone.cfg 205 206 verify_disk_count "$DISKS" 1 207 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed" 208 ksh93 $(atf_get_srcdir)/zfs_clone_008_neg.ksh || atf_fail "Testcase failed" 209} 210zfs_clone_008_neg_cleanup() 211{ 212 . $(atf_get_srcdir)/../../../include/default.cfg 213 . $(atf_get_srcdir)/zfs_clone.cfg 214 215 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed" 216} 217 218 219atf_test_case zfs_clone_009_neg cleanup 220zfs_clone_009_neg_head() 221{ 222 atf_set "descr" "Verify 'zfs clone -o <volume>' fails with bad <volume> argument." 223 atf_set "require.progs" "ksh93 zfs" 224} 225zfs_clone_009_neg_body() 226{ 227 . $(atf_get_srcdir)/../../../include/default.cfg 228 . $(atf_get_srcdir)/zfs_clone.cfg 229 230 verify_disk_count "$DISKS" 1 231 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed" 232 ksh93 $(atf_get_srcdir)/zfs_clone_009_neg.ksh || atf_fail "Testcase failed" 233} 234zfs_clone_009_neg_cleanup() 235{ 236 . $(atf_get_srcdir)/../../../include/default.cfg 237 . $(atf_get_srcdir)/zfs_clone.cfg 238 239 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed" 240} 241 242 243atf_init_test_cases() 244{ 245 246 atf_add_test_case zfs_clone_001_neg 247 atf_add_test_case zfs_clone_002_pos 248 atf_add_test_case zfs_clone_003_pos 249 atf_add_test_case zfs_clone_004_pos 250 atf_add_test_case zfs_clone_005_pos 251 atf_add_test_case zfs_clone_006_pos 252 atf_add_test_case zfs_clone_007_pos 253 atf_add_test_case zfs_clone_008_neg 254 atf_add_test_case zfs_clone_009_neg 255} 256