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_get_001_pos cleanup
28zfs_get_001_pos_head()
29{
30	atf_set "descr" "Setting the valid options and properties 'zfs get' should returnthe correct property value."
31	atf_set "require.progs" "ksh93 zfs"
32}
33zfs_get_001_pos_body()
34{
35	. $(atf_get_srcdir)/../../../include/default.cfg
36	. $(atf_get_srcdir)/zfs_get_list_d.kshlib
37	. $(atf_get_srcdir)/zfs_get_common.kshlib
38	. $(atf_get_srcdir)/zfs_get.cfg
39
40	verify_disk_count "$DISKS" 1
41	ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
42	ksh93 $(atf_get_srcdir)/zfs_get_001_pos.ksh || atf_fail "Testcase failed"
43}
44zfs_get_001_pos_cleanup()
45{
46	. $(atf_get_srcdir)/../../../include/default.cfg
47	. $(atf_get_srcdir)/zfs_get_list_d.kshlib
48	. $(atf_get_srcdir)/zfs_get_common.kshlib
49	. $(atf_get_srcdir)/zfs_get.cfg
50
51	ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
52}
53
54
55atf_test_case zfs_get_002_pos cleanup
56zfs_get_002_pos_head()
57{
58	atf_set "descr" "Setting the valid options and properties 'zfs get' return correctvalue. It should be successful."
59	atf_set "require.progs" "ksh93 zfs"
60}
61zfs_get_002_pos_body()
62{
63	. $(atf_get_srcdir)/../../../include/default.cfg
64	. $(atf_get_srcdir)/zfs_get_list_d.kshlib
65	. $(atf_get_srcdir)/zfs_get_common.kshlib
66	. $(atf_get_srcdir)/zfs_get.cfg
67
68	verify_disk_count "$DISKS" 1
69	ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
70	ksh93 $(atf_get_srcdir)/zfs_get_002_pos.ksh || atf_fail "Testcase failed"
71}
72zfs_get_002_pos_cleanup()
73{
74	. $(atf_get_srcdir)/../../../include/default.cfg
75	. $(atf_get_srcdir)/zfs_get_list_d.kshlib
76	. $(atf_get_srcdir)/zfs_get_common.kshlib
77	. $(atf_get_srcdir)/zfs_get.cfg
78
79	ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
80}
81
82
83atf_test_case zfs_get_003_pos cleanup
84zfs_get_003_pos_head()
85{
86	atf_set "descr" "'zfs get' should get consistent report with different option."
87	atf_set "require.progs" "ksh93 zfs"
88}
89zfs_get_003_pos_body()
90{
91	. $(atf_get_srcdir)/../../../include/default.cfg
92	. $(atf_get_srcdir)/zfs_get_list_d.kshlib
93	. $(atf_get_srcdir)/zfs_get_common.kshlib
94	. $(atf_get_srcdir)/zfs_get.cfg
95
96	verify_disk_count "$DISKS" 1
97	ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
98	ksh93 $(atf_get_srcdir)/zfs_get_003_pos.ksh || atf_fail "Testcase failed"
99}
100zfs_get_003_pos_cleanup()
101{
102	. $(atf_get_srcdir)/../../../include/default.cfg
103	. $(atf_get_srcdir)/zfs_get_list_d.kshlib
104	. $(atf_get_srcdir)/zfs_get_common.kshlib
105	. $(atf_get_srcdir)/zfs_get.cfg
106
107	ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
108}
109
110
111atf_test_case zfs_get_004_pos cleanup
112zfs_get_004_pos_head()
113{
114	atf_set "descr" "Verify the functions of 'zfs get all' work."
115	atf_set "require.progs" "ksh93 zfs zpool"
116}
117zfs_get_004_pos_body()
118{
119	. $(atf_get_srcdir)/../../../include/default.cfg
120	. $(atf_get_srcdir)/zfs_get_list_d.kshlib
121	. $(atf_get_srcdir)/zfs_get_common.kshlib
122	. $(atf_get_srcdir)/zfs_get.cfg
123
124	verify_disk_count "$DISKS" 1
125	ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
126	ksh93 $(atf_get_srcdir)/zfs_get_004_pos.ksh || atf_fail "Testcase failed"
127}
128zfs_get_004_pos_cleanup()
129{
130	. $(atf_get_srcdir)/../../../include/default.cfg
131	. $(atf_get_srcdir)/zfs_get_list_d.kshlib
132	. $(atf_get_srcdir)/zfs_get_common.kshlib
133	. $(atf_get_srcdir)/zfs_get.cfg
134
135	ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
136}
137
138
139atf_test_case zfs_get_005_neg cleanup
140zfs_get_005_neg_head()
141{
142	atf_set "descr" "Setting the invalid option and properties, 'zfs get' should befailed."
143	atf_set "require.progs" "ksh93 zfs"
144}
145zfs_get_005_neg_body()
146{
147	. $(atf_get_srcdir)/../../../include/default.cfg
148	. $(atf_get_srcdir)/zfs_get_list_d.kshlib
149	. $(atf_get_srcdir)/zfs_get_common.kshlib
150	. $(atf_get_srcdir)/zfs_get.cfg
151
152	verify_disk_count "$DISKS" 1
153	ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
154	ksh93 $(atf_get_srcdir)/zfs_get_005_neg.ksh || atf_fail "Testcase failed"
155}
156zfs_get_005_neg_cleanup()
157{
158	. $(atf_get_srcdir)/../../../include/default.cfg
159	. $(atf_get_srcdir)/zfs_get_list_d.kshlib
160	. $(atf_get_srcdir)/zfs_get_common.kshlib
161	. $(atf_get_srcdir)/zfs_get.cfg
162
163	ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
164}
165
166
167atf_test_case zfs_get_006_neg cleanup
168zfs_get_006_neg_head()
169{
170	atf_set "descr" "Verify 'zfs get all' fails with invalid combination scenarios."
171	atf_set "require.progs" "ksh93 zfs"
172}
173zfs_get_006_neg_body()
174{
175	. $(atf_get_srcdir)/../../../include/default.cfg
176	. $(atf_get_srcdir)/zfs_get_list_d.kshlib
177	. $(atf_get_srcdir)/zfs_get_common.kshlib
178	. $(atf_get_srcdir)/zfs_get.cfg
179
180	verify_disk_count "$DISKS" 1
181	ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
182	ksh93 $(atf_get_srcdir)/zfs_get_006_neg.ksh || atf_fail "Testcase failed"
183}
184zfs_get_006_neg_cleanup()
185{
186	. $(atf_get_srcdir)/../../../include/default.cfg
187	. $(atf_get_srcdir)/zfs_get_list_d.kshlib
188	. $(atf_get_srcdir)/zfs_get_common.kshlib
189	. $(atf_get_srcdir)/zfs_get.cfg
190
191	ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
192}
193
194
195atf_test_case zfs_get_007_neg cleanup
196zfs_get_007_neg_head()
197{
198	atf_set "descr" "'zfs get -o' fails with invalid options or column names"
199	atf_set "require.progs" "ksh93 zfs"
200}
201zfs_get_007_neg_body()
202{
203	. $(atf_get_srcdir)/../../../include/default.cfg
204	. $(atf_get_srcdir)/zfs_get_list_d.kshlib
205	. $(atf_get_srcdir)/zfs_get_common.kshlib
206	. $(atf_get_srcdir)/zfs_get.cfg
207
208	verify_disk_count "$DISKS" 1
209	ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
210	ksh93 $(atf_get_srcdir)/zfs_get_007_neg.ksh || atf_fail "Testcase failed"
211}
212zfs_get_007_neg_cleanup()
213{
214	. $(atf_get_srcdir)/../../../include/default.cfg
215	. $(atf_get_srcdir)/zfs_get_list_d.kshlib
216	. $(atf_get_srcdir)/zfs_get_common.kshlib
217	. $(atf_get_srcdir)/zfs_get.cfg
218
219	ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
220}
221
222
223atf_test_case zfs_get_008_pos cleanup
224zfs_get_008_pos_head()
225{
226	atf_set "descr" "Verify '-d <n>' can work with other options"
227	atf_set "require.progs" "ksh93 zfs"
228}
229zfs_get_008_pos_body()
230{
231	. $(atf_get_srcdir)/../../../include/default.cfg
232	. $(atf_get_srcdir)/zfs_get_list_d.kshlib
233	. $(atf_get_srcdir)/zfs_get_common.kshlib
234	. $(atf_get_srcdir)/zfs_get.cfg
235
236	verify_disk_count "$DISKS" 1
237	ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
238	ksh93 $(atf_get_srcdir)/zfs_get_008_pos.ksh || atf_fail "Testcase failed"
239}
240zfs_get_008_pos_cleanup()
241{
242	. $(atf_get_srcdir)/../../../include/default.cfg
243	. $(atf_get_srcdir)/zfs_get_list_d.kshlib
244	. $(atf_get_srcdir)/zfs_get_common.kshlib
245	. $(atf_get_srcdir)/zfs_get.cfg
246
247	ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
248}
249
250
251atf_test_case zfs_get_009_pos cleanup
252zfs_get_009_pos_head()
253{
254	atf_set "descr" "'zfs get -d <n>' should get expected output."
255	atf_set "require.progs" "ksh93 zfs"
256	atf_set "timeout" 1200
257}
258zfs_get_009_pos_body()
259{
260	. $(atf_get_srcdir)/../../../include/default.cfg
261	. $(atf_get_srcdir)/zfs_get_list_d.kshlib
262	. $(atf_get_srcdir)/zfs_get_common.kshlib
263	. $(atf_get_srcdir)/zfs_get.cfg
264
265	verify_disk_count "$DISKS" 1
266	ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
267	ksh93 $(atf_get_srcdir)/zfs_get_009_pos.ksh || atf_fail "Testcase failed"
268}
269zfs_get_009_pos_cleanup()
270{
271	. $(atf_get_srcdir)/../../../include/default.cfg
272	. $(atf_get_srcdir)/zfs_get_list_d.kshlib
273	. $(atf_get_srcdir)/zfs_get_common.kshlib
274	. $(atf_get_srcdir)/zfs_get.cfg
275
276	ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
277}
278
279
280atf_test_case zfs_get_010_neg cleanup
281zfs_get_010_neg_head()
282{
283	atf_set "descr" "A negative depth or a non numeric depth should fail in 'zfs get -d <n>'"
284	atf_set "require.progs" "ksh93 zfs"
285}
286zfs_get_010_neg_body()
287{
288	. $(atf_get_srcdir)/../../../include/default.cfg
289	. $(atf_get_srcdir)/zfs_get_list_d.kshlib
290	. $(atf_get_srcdir)/zfs_get_common.kshlib
291	. $(atf_get_srcdir)/zfs_get.cfg
292
293	verify_disk_count "$DISKS" 1
294	ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
295	ksh93 $(atf_get_srcdir)/zfs_get_010_neg.ksh || atf_fail "Testcase failed"
296}
297zfs_get_010_neg_cleanup()
298{
299	. $(atf_get_srcdir)/../../../include/default.cfg
300	. $(atf_get_srcdir)/zfs_get_list_d.kshlib
301	. $(atf_get_srcdir)/zfs_get_common.kshlib
302	. $(atf_get_srcdir)/zfs_get.cfg
303
304	ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
305}
306
307
308atf_init_test_cases()
309{
310
311	atf_add_test_case zfs_get_001_pos
312	atf_add_test_case zfs_get_002_pos
313	atf_add_test_case zfs_get_003_pos
314	atf_add_test_case zfs_get_004_pos
315	atf_add_test_case zfs_get_005_neg
316	atf_add_test_case zfs_get_006_neg
317	atf_add_test_case zfs_get_007_neg
318	atf_add_test_case zfs_get_008_pos
319	atf_add_test_case zfs_get_009_pos
320	atf_add_test_case zfs_get_010_neg
321}
322