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 zpool_upgrade_001_pos cleanup 28zpool_upgrade_001_pos_head() 29{ 30 atf_set "descr" "Executing 'zpool upgrade -v' command succeeds." 31 atf_set "require.progs" "ksh93 zpool" 32 atf_set "timeout" 1800 33} 34zpool_upgrade_001_pos_body() 35{ 36 . $(atf_get_srcdir)/../../../include/default.cfg 37 . $(atf_get_srcdir)/zpool_upgrade.kshlib 38 . $(atf_get_srcdir)/zpool_upgrade.cfg 39 40 verify_disk_count "$DISKS" 2 41 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed" 42 ksh93 $(atf_get_srcdir)/zpool_upgrade_001_pos.ksh || atf_fail "Testcase failed" 43} 44zpool_upgrade_001_pos_cleanup() 45{ 46 . $(atf_get_srcdir)/../../../include/default.cfg 47 . $(atf_get_srcdir)/zpool_upgrade.kshlib 48 . $(atf_get_srcdir)/zpool_upgrade.cfg 49 50 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed" 51} 52 53 54atf_test_case zpool_upgrade_002_pos cleanup 55zpool_upgrade_002_pos_head() 56{ 57 atf_set "descr" "Import pools of all versions - zpool upgrade on each pools works" 58 atf_set "require.progs" "ksh93 zpool" 59 atf_set "timeout" 1800 60} 61zpool_upgrade_002_pos_body() 62{ 63 . $(atf_get_srcdir)/../../../include/default.cfg 64 . $(atf_get_srcdir)/zpool_upgrade.kshlib 65 . $(atf_get_srcdir)/zpool_upgrade.cfg 66 67 verify_disk_count "$DISKS" 2 68 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed" 69 ksh93 $(atf_get_srcdir)/zpool_upgrade_002_pos.ksh || atf_fail "Testcase failed" 70} 71zpool_upgrade_002_pos_cleanup() 72{ 73 . $(atf_get_srcdir)/../../../include/default.cfg 74 . $(atf_get_srcdir)/zpool_upgrade.kshlib 75 . $(atf_get_srcdir)/zpool_upgrade.cfg 76 77 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed" 78} 79 80 81atf_test_case zpool_upgrade_003_pos cleanup 82zpool_upgrade_003_pos_head() 83{ 84 atf_set "descr" "Upgrading a pool that has already been upgraded succeeds." 85 atf_set "require.progs" "ksh93 zpool" 86 atf_set "timeout" 1800 87} 88zpool_upgrade_003_pos_body() 89{ 90 . $(atf_get_srcdir)/../../../include/default.cfg 91 . $(atf_get_srcdir)/zpool_upgrade.kshlib 92 . $(atf_get_srcdir)/zpool_upgrade.cfg 93 94 verify_disk_count "$DISKS" 2 95 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed" 96 ksh93 $(atf_get_srcdir)/zpool_upgrade_003_pos.ksh || atf_fail "Testcase failed" 97} 98zpool_upgrade_003_pos_cleanup() 99{ 100 . $(atf_get_srcdir)/../../../include/default.cfg 101 . $(atf_get_srcdir)/zpool_upgrade.kshlib 102 . $(atf_get_srcdir)/zpool_upgrade.cfg 103 104 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed" 105} 106 107 108atf_test_case zpool_upgrade_004_pos cleanup 109zpool_upgrade_004_pos_head() 110{ 111 atf_set "descr" "zpool upgrade -a works" 112 atf_set "require.progs" "ksh93 zpool" 113 atf_set "timeout" 1800 114} 115zpool_upgrade_004_pos_body() 116{ 117 . $(atf_get_srcdir)/../../../include/default.cfg 118 . $(atf_get_srcdir)/zpool_upgrade.kshlib 119 . $(atf_get_srcdir)/zpool_upgrade.cfg 120 121 verify_disk_count "$DISKS" 2 122 if other_pools_exist; then 123 atf_skip "Can't test unmount -a with existing pools" 124 fi 125 126 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed" 127 ksh93 $(atf_get_srcdir)/zpool_upgrade_004_pos.ksh || atf_fail "Testcase failed" 128} 129zpool_upgrade_004_pos_cleanup() 130{ 131 . $(atf_get_srcdir)/../../../include/default.cfg 132 . $(atf_get_srcdir)/zpool_upgrade.kshlib 133 . $(atf_get_srcdir)/zpool_upgrade.cfg 134 135 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed" 136} 137 138 139atf_test_case zpool_upgrade_005_neg cleanup 140zpool_upgrade_005_neg_head() 141{ 142 atf_set "descr" "Variations of upgrade -v print usage message,return with non-zero status" 143 atf_set "require.progs" "ksh93 zpool" 144 atf_set "timeout" 1800 145} 146zpool_upgrade_005_neg_body() 147{ 148 . $(atf_get_srcdir)/../../../include/default.cfg 149 . $(atf_get_srcdir)/zpool_upgrade.kshlib 150 . $(atf_get_srcdir)/zpool_upgrade.cfg 151 152 verify_disk_count "$DISKS" 2 153 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed" 154 ksh93 $(atf_get_srcdir)/zpool_upgrade_005_neg.ksh || atf_fail "Testcase failed" 155} 156zpool_upgrade_005_neg_cleanup() 157{ 158 . $(atf_get_srcdir)/../../../include/default.cfg 159 . $(atf_get_srcdir)/zpool_upgrade.kshlib 160 . $(atf_get_srcdir)/zpool_upgrade.cfg 161 162 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed" 163} 164 165 166atf_test_case zpool_upgrade_006_neg cleanup 167zpool_upgrade_006_neg_head() 168{ 169 atf_set "descr" "Attempting to upgrade a non-existent pool will return an error" 170 atf_set "require.progs" "ksh93 zpool" 171 atf_set "timeout" 1800 172} 173zpool_upgrade_006_neg_body() 174{ 175 . $(atf_get_srcdir)/../../../include/default.cfg 176 . $(atf_get_srcdir)/zpool_upgrade.kshlib 177 . $(atf_get_srcdir)/zpool_upgrade.cfg 178 179 verify_disk_count "$DISKS" 2 180 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed" 181 ksh93 $(atf_get_srcdir)/zpool_upgrade_006_neg.ksh || atf_fail "Testcase failed" 182} 183zpool_upgrade_006_neg_cleanup() 184{ 185 . $(atf_get_srcdir)/../../../include/default.cfg 186 . $(atf_get_srcdir)/zpool_upgrade.kshlib 187 . $(atf_get_srcdir)/zpool_upgrade.cfg 188 189 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed" 190} 191 192 193atf_test_case zpool_upgrade_007_pos cleanup 194zpool_upgrade_007_pos_head() 195{ 196 atf_set "descr" "Import pools of all versions - 'zfs upgrade' on each pools works" 197 atf_set "require.progs" "ksh93 zpool" 198 # This test can take quite a while, especially on debug builds 199 atf_set "timeout" 7200 200} 201zpool_upgrade_007_pos_body() 202{ 203 . $(atf_get_srcdir)/../../../include/default.cfg 204 . $(atf_get_srcdir)/zpool_upgrade.kshlib 205 . $(atf_get_srcdir)/zpool_upgrade.cfg 206 207 verify_disk_count "$DISKS" 2 208 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed" 209 ksh93 $(atf_get_srcdir)/zpool_upgrade_007_pos.ksh || atf_fail "Testcase failed" 210} 211zpool_upgrade_007_pos_cleanup() 212{ 213 . $(atf_get_srcdir)/../../../include/default.cfg 214 . $(atf_get_srcdir)/zpool_upgrade.kshlib 215 . $(atf_get_srcdir)/zpool_upgrade.cfg 216 217 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed" 218} 219 220 221atf_test_case zpool_upgrade_008_pos cleanup 222zpool_upgrade_008_pos_head() 223{ 224 atf_set "descr" "Zpool upgrade should be able to upgrade pools to a given version using -V" 225 atf_set "require.progs" "ksh93 zpool" 226 atf_set "timeout" 1800 227} 228zpool_upgrade_008_pos_body() 229{ 230 . $(atf_get_srcdir)/../../../include/default.cfg 231 . $(atf_get_srcdir)/zpool_upgrade.kshlib 232 . $(atf_get_srcdir)/zpool_upgrade.cfg 233 234 verify_disk_count "$DISKS" 2 235 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed" 236 ksh93 $(atf_get_srcdir)/zpool_upgrade_008_pos.ksh || atf_fail "Testcase failed" 237} 238zpool_upgrade_008_pos_cleanup() 239{ 240 . $(atf_get_srcdir)/../../../include/default.cfg 241 . $(atf_get_srcdir)/zpool_upgrade.kshlib 242 . $(atf_get_srcdir)/zpool_upgrade.cfg 243 244 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed" 245} 246 247 248atf_test_case zpool_upgrade_009_neg cleanup 249zpool_upgrade_009_neg_head() 250{ 251 atf_set "descr" "Zpool upgrade -V shouldn't be able to upgrade a pool to an unknown version" 252 atf_set "require.progs" "ksh93 zpool" 253 atf_set "timeout" 1800 254} 255zpool_upgrade_009_neg_body() 256{ 257 . $(atf_get_srcdir)/../../../include/default.cfg 258 . $(atf_get_srcdir)/zpool_upgrade.kshlib 259 . $(atf_get_srcdir)/zpool_upgrade.cfg 260 261 verify_disk_count "$DISKS" 2 262 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed" 263 ksh93 $(atf_get_srcdir)/zpool_upgrade_009_neg.ksh || atf_fail "Testcase failed" 264} 265zpool_upgrade_009_neg_cleanup() 266{ 267 . $(atf_get_srcdir)/../../../include/default.cfg 268 . $(atf_get_srcdir)/zpool_upgrade.kshlib 269 . $(atf_get_srcdir)/zpool_upgrade.cfg 270 271 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed" 272} 273 274 275atf_init_test_cases() 276{ 277 278 atf_add_test_case zpool_upgrade_001_pos 279 atf_add_test_case zpool_upgrade_002_pos 280 atf_add_test_case zpool_upgrade_003_pos 281 atf_add_test_case zpool_upgrade_004_pos 282 atf_add_test_case zpool_upgrade_005_neg 283 atf_add_test_case zpool_upgrade_006_neg 284 atf_add_test_case zpool_upgrade_007_pos 285 atf_add_test_case zpool_upgrade_008_pos 286 atf_add_test_case zpool_upgrade_009_neg 287} 288