1185029Spjd#!/bin/sh
2185029Spjd# $FreeBSD$
3185029Spjd
4185029Spjddir=`dirname $0`
5185029Spjd. ${dir}/../../misc.sh
6185029Spjd
7185029Spjdecho "1..18"
8185029Spjd
9185029Spjddisks_create 4
10185029Spjdfiles_create 4
11185029Spjdnames_create 1
12185029Spjd
13185029Spjdexpect_ok ${ZPOOL} create ${name0} ${disk0} spare ${disk1}
14185029Spjdexpect_ok ${ZPOOL} add ${name0} spare ${disk2} ${disk3}
15185029Spjdexp=`(
16185029Spjd  echo "  pool: ${name0}"
17185029Spjd  echo " state: ONLINE"
18185029Spjd  echo " scrub: none requested"
19185029Spjd  echo "config:"
20185029Spjd  echo "	NAME        STATE   READ WRITE CKSUM"
21185029Spjd  echo "	${name0}    ONLINE     0     0     0"
22185029Spjd  echo "	  ${disk0}  ONLINE     0     0     0"
23185029Spjd  echo "	spares"
24185029Spjd  echo "	  ${disk1}  AVAIL"
25185029Spjd  echo "	  ${disk2}  AVAIL"
26185029Spjd  echo "	  ${disk3}  AVAIL"
27185029Spjd  echo "errors: No known data errors"
28185029Spjd)`
29185029Spjdexpect "${exp}" ${ZPOOL} status ${name0}
30185029Spjdexpect_ok ${ZPOOL} remove ${name0} ${disk1} ${disk2}
31185029Spjdexp=`(
32185029Spjd  echo "  pool: ${name0}"
33185029Spjd  echo " state: ONLINE"
34185029Spjd  echo " scrub: none requested"
35185029Spjd  echo "config:"
36185029Spjd  echo "	NAME        STATE   READ WRITE CKSUM"
37185029Spjd  echo "	${name0}    ONLINE     0     0     0"
38185029Spjd  echo "	  ${disk0}  ONLINE     0     0     0"
39185029Spjd  echo "	spares"
40185029Spjd  echo "	  ${disk3}  AVAIL"
41185029Spjd  echo "errors: No known data errors"
42185029Spjd)`
43185029Spjdexpect "${exp}" ${ZPOOL} status ${name0}
44185029Spjdexpect_ok ${ZPOOL} remove ${name0} ${disk3}
45185029Spjdexp=`(
46185029Spjd  echo "  pool: ${name0}"
47185029Spjd  echo " state: ONLINE"
48185029Spjd  echo " scrub: none requested"
49185029Spjd  echo "config:"
50185029Spjd  echo "	NAME        STATE   READ WRITE CKSUM"
51185029Spjd  echo "	${name0}    ONLINE     0     0     0"
52185029Spjd  echo "	  ${disk0}  ONLINE     0     0     0"
53185029Spjd  echo "errors: No known data errors"
54185029Spjd)`
55185029Spjdexpect "${exp}" ${ZPOOL} status ${name0}
56185029Spjdexpect_ok ${ZPOOL} destroy ${name0}
57185029Spjdexpect_fl ${ZPOOL} status -x ${name0}
58185029Spjd
59185029Spjdexpect_ok ${ZPOOL} create ${name0} ${file0} spare ${file1}
60185029Spjdexpect_ok ${ZPOOL} add ${name0} spare ${file2} ${file3}
61185029Spjdexp=`(
62185029Spjd  echo "  pool: ${name0}"
63185029Spjd  echo " state: ONLINE"
64185029Spjd  echo " scrub: none requested"
65185029Spjd  echo "config:"
66185029Spjd  echo "	NAME        STATE   READ WRITE CKSUM"
67185029Spjd  echo "	${name0}    ONLINE     0     0     0"
68185029Spjd  echo "	  ${file0}  ONLINE     0     0     0"
69185029Spjd  echo "	spares"
70185029Spjd  echo "	  ${file1}  AVAIL"
71185029Spjd  echo "	  ${file2}  AVAIL"
72185029Spjd  echo "	  ${file3}  AVAIL"
73185029Spjd  echo "errors: No known data errors"
74185029Spjd)`
75185029Spjdexpect "${exp}" ${ZPOOL} status ${name0}
76185029Spjdexpect_ok ${ZPOOL} remove ${name0} ${file1} ${file2}
77185029Spjdexp=`(
78185029Spjd  echo "  pool: ${name0}"
79185029Spjd  echo " state: ONLINE"
80185029Spjd  echo " scrub: none requested"
81185029Spjd  echo "config:"
82185029Spjd  echo "	NAME        STATE   READ WRITE CKSUM"
83185029Spjd  echo "	${name0}    ONLINE     0     0     0"
84185029Spjd  echo "	  ${file0}  ONLINE     0     0     0"
85185029Spjd  echo "	spares"
86185029Spjd  echo "	  ${file3}  AVAIL"
87185029Spjd  echo "errors: No known data errors"
88185029Spjd)`
89185029Spjdexpect "${exp}" ${ZPOOL} status ${name0}
90185029Spjdexpect_ok ${ZPOOL} remove ${name0} ${file3}
91185029Spjdexp=`(
92185029Spjd  echo "  pool: ${name0}"
93185029Spjd  echo " state: ONLINE"
94185029Spjd  echo " scrub: none requested"
95185029Spjd  echo "config:"
96185029Spjd  echo "	NAME        STATE   READ WRITE CKSUM"
97185029Spjd  echo "	${name0}    ONLINE     0     0     0"
98185029Spjd  echo "	  ${file0}  ONLINE     0     0     0"
99185029Spjd  echo "errors: No known data errors"
100185029Spjd)`
101185029Spjdexpect "${exp}" ${ZPOOL} status ${name0}
102185029Spjdexpect_ok ${ZPOOL} destroy ${name0}
103185029Spjdexpect_fl ${ZPOOL} status -x ${name0}
104185029Spjd
105185029Spjdfiles_destroy
106185029Spjddisks_destroy
107