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 redundancy_001_pos cleanup 28redundancy_001_pos_head() 29{ 30 atf_set "descr" "Verify raidz pool can withstand one device is failing." 31 atf_set "timeout" 1800 32} 33redundancy_001_pos_body() 34{ 35 . $(atf_get_srcdir)/../../include/default.cfg 36 . $(atf_get_srcdir)/redundancy.kshlib 37 . $(atf_get_srcdir)/redundancy.cfg 38 39 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed" 40 ksh93 $(atf_get_srcdir)/redundancy_001_pos.ksh || atf_fail "Testcase failed" 41} 42redundancy_001_pos_cleanup() 43{ 44 . $(atf_get_srcdir)/../../include/default.cfg 45 . $(atf_get_srcdir)/redundancy.kshlib 46 . $(atf_get_srcdir)/redundancy.cfg 47 48 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed" 49} 50 51 52atf_test_case redundancy_002_pos cleanup 53redundancy_002_pos_head() 54{ 55 atf_set "descr" "Verify raidz2 pool can withstand two devices are failing." 56 atf_set "timeout" 1800 57} 58redundancy_002_pos_body() 59{ 60 . $(atf_get_srcdir)/../../include/default.cfg 61 . $(atf_get_srcdir)/redundancy.kshlib 62 . $(atf_get_srcdir)/redundancy.cfg 63 64 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed" 65 ksh93 $(atf_get_srcdir)/redundancy_002_pos.ksh || atf_fail "Testcase failed" 66} 67redundancy_002_pos_cleanup() 68{ 69 . $(atf_get_srcdir)/../../include/default.cfg 70 . $(atf_get_srcdir)/redundancy.kshlib 71 . $(atf_get_srcdir)/redundancy.cfg 72 73 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed" 74} 75 76 77atf_test_case redundancy_003_pos cleanup 78redundancy_003_pos_head() 79{ 80 atf_set "descr" "Verify mirrored pool can withstand N-1 devices are failing or missing." 81 atf_set "timeout" 1800 82} 83redundancy_003_pos_body() 84{ 85 . $(atf_get_srcdir)/../../include/default.cfg 86 . $(atf_get_srcdir)/redundancy.kshlib 87 . $(atf_get_srcdir)/redundancy.cfg 88 89 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed" 90 ksh93 $(atf_get_srcdir)/redundancy_003_pos.ksh || atf_fail "Testcase failed" 91} 92redundancy_003_pos_cleanup() 93{ 94 . $(atf_get_srcdir)/../../include/default.cfg 95 . $(atf_get_srcdir)/redundancy.kshlib 96 . $(atf_get_srcdir)/redundancy.cfg 97 98 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed" 99} 100 101 102atf_test_case redundancy_004_neg cleanup 103redundancy_004_neg_head() 104{ 105 atf_set "descr" "Verify striped pool have no data redundancy." 106 atf_set "require.progs" "ksh93 zpool" 107 atf_set "timeout" 1800 108} 109redundancy_004_neg_body() 110{ 111 . $(atf_get_srcdir)/../../include/default.cfg 112 . $(atf_get_srcdir)/redundancy.kshlib 113 . $(atf_get_srcdir)/redundancy.cfg 114 115 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed" 116 ksh93 $(atf_get_srcdir)/redundancy_004_neg.ksh || atf_fail "Testcase failed" 117} 118redundancy_004_neg_cleanup() 119{ 120 . $(atf_get_srcdir)/../../include/default.cfg 121 . $(atf_get_srcdir)/redundancy.kshlib 122 . $(atf_get_srcdir)/redundancy.cfg 123 124 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed" 125} 126 127 128atf_init_test_cases() 129{ 130 131 atf_add_test_case redundancy_001_pos 132 atf_add_test_case redundancy_002_pos 133 atf_add_test_case redundancy_003_pos 134 atf_add_test_case redundancy_004_neg 135} 136