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