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.
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.
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]
24 # Copyright 2012 Spectra Logic. All rights reserved.
25 # Use is subject to license terms.
29 atf_test_case zpool_create_001_pos cleanup
30 zpool_create_001_pos_head()
32 atf_set "descr" "'zpool create <pool> <vspec> ...' can successfully createa new pool with a name in ZFS namespace."
33 atf_set "require.progs" zpool
34 atf_set "timeout" 2400
36 zpool_create_001_pos_body()
38 . $(atf_get_srcdir)/../../../include/default.cfg
39 . $(atf_get_srcdir)/zpool_create.kshlib
40 . $(atf_get_srcdir)/zpool_create.cfg
42 verify_disk_count "$DISKS" 2
43 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
44 ksh93 $(atf_get_srcdir)/zpool_create_001_pos.ksh || atf_fail "Testcase failed"
46 zpool_create_001_pos_cleanup()
48 . $(atf_get_srcdir)/../../../include/default.cfg
49 . $(atf_get_srcdir)/zpool_create.kshlib
50 . $(atf_get_srcdir)/zpool_create.cfg
52 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
56 atf_test_case zpool_create_002_pos cleanup
57 zpool_create_002_pos_head()
59 atf_set "descr" "'zpool create -f <pool> <vspec> ...' can successfully createa new pool in some cases."
60 atf_set "require.progs" zpool
61 atf_set "timeout" 2400
63 zpool_create_002_pos_body()
65 . $(atf_get_srcdir)/../../../include/default.cfg
66 . $(atf_get_srcdir)/zpool_create.kshlib
67 . $(atf_get_srcdir)/zpool_create.cfg
69 verify_disk_count "$DISKS" 1
70 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
71 ksh93 $(atf_get_srcdir)/zpool_create_002_pos.ksh || atf_fail "Testcase failed"
73 zpool_create_002_pos_cleanup()
75 . $(atf_get_srcdir)/../../../include/default.cfg
76 . $(atf_get_srcdir)/zpool_create.kshlib
77 . $(atf_get_srcdir)/zpool_create.cfg
79 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
83 atf_test_case zpool_create_003_pos cleanup
84 zpool_create_003_pos_head()
86 atf_set "descr" "'zpool create -n <pool> <vspec> ...' can display the configureationwithout actually creating the pool."
87 atf_set "require.progs" zpool
88 atf_set "timeout" 2400
90 zpool_create_003_pos_body()
92 . $(atf_get_srcdir)/../../../include/default.cfg
93 . $(atf_get_srcdir)/zpool_create.kshlib
94 . $(atf_get_srcdir)/zpool_create.cfg
96 verify_disk_count "$DISKS" 1
97 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
98 ksh93 $(atf_get_srcdir)/zpool_create_003_pos.ksh || atf_fail "Testcase failed"
100 zpool_create_003_pos_cleanup()
102 . $(atf_get_srcdir)/../../../include/default.cfg
103 . $(atf_get_srcdir)/zpool_create.kshlib
104 . $(atf_get_srcdir)/zpool_create.cfg
106 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
110 atf_test_case zpool_create_004_pos cleanup
111 zpool_create_004_pos_head()
113 atf_set "descr" "'zpool create [-f]' can create a storage pool with large numbers of vdevswithout any errors."
114 atf_set "require.progs" zfs zpool
115 atf_set "timeout" 2400
117 zpool_create_004_pos_body()
119 . $(atf_get_srcdir)/../../../include/default.cfg
120 . $(atf_get_srcdir)/zpool_create.kshlib
121 . $(atf_get_srcdir)/zpool_create.cfg
123 verify_disk_count "$DISKS" 1
124 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
125 ksh93 $(atf_get_srcdir)/zpool_create_004_pos.ksh || atf_fail "Testcase failed"
127 zpool_create_004_pos_cleanup()
129 . $(atf_get_srcdir)/../../../include/default.cfg
130 . $(atf_get_srcdir)/zpool_create.kshlib
131 . $(atf_get_srcdir)/zpool_create.cfg
133 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
137 atf_test_case zpool_create_005_pos cleanup
138 zpool_create_005_pos_head()
140 atf_set "descr" "'zpool create [-R root][-m mountpoint] <pool> <vdev> ...' can createan alternate pool or a new pool mounted at the specified mountpoint."
141 atf_set "require.progs" zpool zfs
142 atf_set "timeout" 2400
144 zpool_create_005_pos_body()
146 . $(atf_get_srcdir)/../../../include/default.cfg
147 . $(atf_get_srcdir)/zpool_create.kshlib
148 . $(atf_get_srcdir)/zpool_create.cfg
150 verify_disk_count "$DISKS" 1
151 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
152 ksh93 $(atf_get_srcdir)/zpool_create_005_pos.ksh || atf_fail "Testcase failed"
154 zpool_create_005_pos_cleanup()
156 . $(atf_get_srcdir)/../../../include/default.cfg
157 . $(atf_get_srcdir)/zpool_create.kshlib
158 . $(atf_get_srcdir)/zpool_create.cfg
160 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
164 atf_test_case zpool_create_006_pos cleanup
165 zpool_create_006_pos_head()
167 atf_set "descr" "Verify 'zpool create' succeed with keywords combination."
168 atf_set "require.progs" zpool
169 atf_set "timeout" 2400
171 zpool_create_006_pos_body()
173 . $(atf_get_srcdir)/../../../include/default.cfg
174 . $(atf_get_srcdir)/zpool_create.kshlib
175 . $(atf_get_srcdir)/zpool_create.cfg
177 verify_disk_count "$DISKS" 1
178 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
179 ksh93 $(atf_get_srcdir)/zpool_create_006_pos.ksh || atf_fail "Testcase failed"
181 zpool_create_006_pos_cleanup()
183 . $(atf_get_srcdir)/../../../include/default.cfg
184 . $(atf_get_srcdir)/zpool_create.kshlib
185 . $(atf_get_srcdir)/zpool_create.cfg
187 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
191 atf_test_case zpool_create_007_neg cleanup
192 zpool_create_007_neg_head()
194 atf_set "descr" "'zpool create' should return an error with badly-formed parameters."
195 atf_set "require.progs" zpool
196 atf_set "timeout" 2400
198 zpool_create_007_neg_body()
200 . $(atf_get_srcdir)/../../../include/default.cfg
201 . $(atf_get_srcdir)/zpool_create.kshlib
202 . $(atf_get_srcdir)/zpool_create.cfg
204 verify_disk_count "$DISKS" 1
205 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
206 ksh93 $(atf_get_srcdir)/zpool_create_007_neg.ksh || atf_fail "Testcase failed"
208 zpool_create_007_neg_cleanup()
210 . $(atf_get_srcdir)/../../../include/default.cfg
211 . $(atf_get_srcdir)/zpool_create.kshlib
212 . $(atf_get_srcdir)/zpool_create.cfg
214 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
218 atf_test_case zpool_create_008_pos cleanup
219 zpool_create_008_pos_head()
221 atf_set "descr" "'zpool create' have to use '-f' scenarios"
222 atf_set "require.progs" zpool
223 atf_set "timeout" 2400
225 zpool_create_008_pos_body()
227 . $(atf_get_srcdir)/../../../include/default.cfg
228 . $(atf_get_srcdir)/zpool_create.kshlib
229 . $(atf_get_srcdir)/zpool_create.cfg
231 verify_disk_count "$DISKS" 1
232 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
233 ksh93 $(atf_get_srcdir)/zpool_create_008_pos.ksh || atf_fail "Testcase failed"
235 zpool_create_008_pos_cleanup()
237 . $(atf_get_srcdir)/../../../include/default.cfg
238 . $(atf_get_srcdir)/zpool_create.kshlib
239 . $(atf_get_srcdir)/zpool_create.cfg
241 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
245 atf_test_case zpool_create_009_neg cleanup
246 zpool_create_009_neg_head()
248 atf_set "descr" "Create a pool with same devices twice or create two pools withsame devices, 'zpool create' should fail."
249 atf_set "require.progs" zpool
250 atf_set "timeout" 2400
252 zpool_create_009_neg_body()
254 . $(atf_get_srcdir)/../../../include/default.cfg
255 . $(atf_get_srcdir)/zpool_create.kshlib
256 . $(atf_get_srcdir)/zpool_create.cfg
258 verify_disk_count "$DISKS" 2
259 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
260 ksh93 $(atf_get_srcdir)/zpool_create_009_neg.ksh || atf_fail "Testcase failed"
262 zpool_create_009_neg_cleanup()
264 . $(atf_get_srcdir)/../../../include/default.cfg
265 . $(atf_get_srcdir)/zpool_create.kshlib
266 . $(atf_get_srcdir)/zpool_create.cfg
268 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
272 atf_test_case zpool_create_010_neg cleanup
273 zpool_create_010_neg_head()
275 atf_set "descr" "'zpool create' should return an error with VDEVs <64mb"
276 atf_set "require.progs" zfs zpool
277 atf_set "timeout" 2400
279 zpool_create_010_neg_body()
281 . $(atf_get_srcdir)/../../../include/default.cfg
282 . $(atf_get_srcdir)/zpool_create.kshlib
283 . $(atf_get_srcdir)/zpool_create.cfg
285 verify_disk_count "$DISKS" 1
286 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
287 ksh93 $(atf_get_srcdir)/zpool_create_010_neg.ksh || atf_fail "Testcase failed"
289 zpool_create_010_neg_cleanup()
291 . $(atf_get_srcdir)/../../../include/default.cfg
292 . $(atf_get_srcdir)/zpool_create.kshlib
293 . $(atf_get_srcdir)/zpool_create.cfg
295 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
299 atf_test_case zpool_create_011_neg cleanup
300 zpool_create_011_neg_head()
302 atf_set "descr" "'zpool create' should be failed with inapplicable scenarios."
303 atf_set "require.progs" zpool
304 atf_set "timeout" 2400
306 zpool_create_011_neg_body()
308 . $(atf_get_srcdir)/../../../include/default.cfg
309 . $(atf_get_srcdir)/zpool_create.kshlib
310 . $(atf_get_srcdir)/zpool_create.cfg
312 verify_disk_count "$DISKS" 1
313 atf_expect_fail "PR 241070 dumpon opens geom devices non-exclusively"
314 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
315 ksh93 $(atf_get_srcdir)/zpool_create_011_neg.ksh || atf_fail "Testcase failed"
317 zpool_create_011_neg_cleanup()
319 . $(atf_get_srcdir)/../../../include/default.cfg
320 . $(atf_get_srcdir)/zpool_create.kshlib
321 . $(atf_get_srcdir)/zpool_create.cfg
323 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
327 atf_test_case zpool_create_012_neg
328 zpool_create_012_neg_head()
330 atf_set "descr" "'zpool create' should fail with disk slice in swap."
331 atf_set "require.progs" zpool
333 zpool_create_012_neg_body()
335 . $(atf_get_srcdir)/../../../include/default.cfg
336 . $(atf_get_srcdir)/zpool_create.kshlib
337 . $(atf_get_srcdir)/zpool_create.cfg
339 verify_disk_count "$DISKS" 1
340 ksh93 $(atf_get_srcdir)/zpool_create_012_neg.ksh || atf_fail "Testcase failed"
344 atf_test_case zpool_create_015_neg cleanup
345 zpool_create_015_neg_head()
347 atf_set "descr" "'zpool create' should fail with zfs vol device in swap."
348 atf_set "require.progs" zfs zpool
350 zpool_create_015_neg_body()
352 . $(atf_get_srcdir)/../../../include/default.cfg
353 . $(atf_get_srcdir)/zpool_create.kshlib
354 . $(atf_get_srcdir)/zpool_create.cfg
356 verify_disk_count "$DISKS" 1
357 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
358 ksh93 $(atf_get_srcdir)/zpool_create_015_neg.ksh || atf_fail "Testcase failed"
360 zpool_create_015_neg_cleanup()
362 . $(atf_get_srcdir)/../../../include/default.cfg
363 . $(atf_get_srcdir)/zpool_create.kshlib
364 . $(atf_get_srcdir)/zpool_create.cfg
366 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
370 atf_test_case zpool_create_017_neg cleanup
371 zpool_create_017_neg_head()
373 atf_set "descr" "'zpool create' should fail with mountpoint exists and not empty."
374 atf_set "require.progs" zpool
375 atf_set "timeout" 2400
377 zpool_create_017_neg_body()
379 [ `uname -s` = "FreeBSD" ] && atf_skip "FreeBSD does not consider creating pools on non-empty mountpoints a bug"
381 . $(atf_get_srcdir)/../../../include/default.cfg
382 . $(atf_get_srcdir)/zpool_create.kshlib
383 . $(atf_get_srcdir)/zpool_create.cfg
385 verify_disk_count "$DISKS" 1
386 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
387 ksh93 $(atf_get_srcdir)/zpool_create_017_neg.ksh || atf_fail "Testcase failed"
389 zpool_create_017_neg_cleanup()
391 . $(atf_get_srcdir)/../../../include/default.cfg
392 . $(atf_get_srcdir)/zpool_create.kshlib
393 . $(atf_get_srcdir)/zpool_create.cfg
395 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
399 atf_test_case zpool_create_018_pos cleanup
400 zpool_create_018_pos_head()
402 atf_set "descr" "zpool create can create pools with specified properties"
403 atf_set "require.progs" zpool
404 atf_set "timeout" 2400
406 zpool_create_018_pos_body()
408 . $(atf_get_srcdir)/../../../include/default.cfg
409 . $(atf_get_srcdir)/zpool_create.kshlib
410 . $(atf_get_srcdir)/zpool_create.cfg
412 verify_disk_count "$DISKS" 1
413 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
414 ksh93 $(atf_get_srcdir)/zpool_create_018_pos.ksh || atf_fail "Testcase failed"
416 zpool_create_018_pos_cleanup()
418 . $(atf_get_srcdir)/../../../include/default.cfg
419 . $(atf_get_srcdir)/zpool_create.kshlib
420 . $(atf_get_srcdir)/zpool_create.cfg
422 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
426 atf_test_case zpool_create_019_pos cleanup
427 zpool_create_019_pos_head()
429 atf_set "descr" "zpool create cannot create pools specifying readonly properties"
430 atf_set "require.progs" zpool
431 atf_set "timeout" 2400
433 zpool_create_019_pos_body()
435 . $(atf_get_srcdir)/../../../include/default.cfg
436 . $(atf_get_srcdir)/zpool_create.kshlib
437 . $(atf_get_srcdir)/zpool_create.cfg
439 verify_disk_count "$DISKS" 1
440 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
441 ksh93 $(atf_get_srcdir)/zpool_create_019_pos.ksh || atf_fail "Testcase failed"
443 zpool_create_019_pos_cleanup()
445 . $(atf_get_srcdir)/../../../include/default.cfg
446 . $(atf_get_srcdir)/zpool_create.kshlib
447 . $(atf_get_srcdir)/zpool_create.cfg
449 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
453 atf_test_case zpool_create_020_pos cleanup
454 zpool_create_020_pos_head()
456 atf_set "descr" "zpool create -R works as expected"
457 atf_set "require.progs" zfs zpool
458 atf_set "timeout" 2400
460 zpool_create_020_pos_body()
462 . $(atf_get_srcdir)/../../../include/default.cfg
463 . $(atf_get_srcdir)/zpool_create.kshlib
464 . $(atf_get_srcdir)/zpool_create.cfg
466 verify_disk_count "$DISKS" 1
467 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
468 ksh93 $(atf_get_srcdir)/zpool_create_020_pos.ksh || atf_fail "Testcase failed"
470 zpool_create_020_pos_cleanup()
472 . $(atf_get_srcdir)/../../../include/default.cfg
473 . $(atf_get_srcdir)/zpool_create.kshlib
474 . $(atf_get_srcdir)/zpool_create.cfg
476 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
480 atf_test_case zpool_create_021_pos cleanup
481 zpool_create_021_pos_head()
483 atf_set "descr" "'zpool create -O property=value pool' can successfully create a poolwith correct filesystem property set."
484 atf_set "require.progs" zpool
485 atf_set "timeout" 2400
487 zpool_create_021_pos_body()
489 . $(atf_get_srcdir)/../../../include/default.cfg
490 . $(atf_get_srcdir)/zpool_create.kshlib
491 . $(atf_get_srcdir)/zpool_create.cfg
493 verify_disk_count "$DISKS" 1
494 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
495 ksh93 $(atf_get_srcdir)/zpool_create_021_pos.ksh || atf_fail "Testcase failed"
497 zpool_create_021_pos_cleanup()
499 . $(atf_get_srcdir)/../../../include/default.cfg
500 . $(atf_get_srcdir)/zpool_create.kshlib
501 . $(atf_get_srcdir)/zpool_create.cfg
503 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
507 atf_test_case zpool_create_022_pos cleanup
508 zpool_create_022_pos_head()
510 atf_set "descr" "'zpool create -O property=value pool' can successfully create a poolwith multiple filesystem properties set."
511 atf_set "require.progs" zpool
512 atf_set "timeout" 2400
514 zpool_create_022_pos_body()
516 . $(atf_get_srcdir)/../../../include/default.cfg
517 . $(atf_get_srcdir)/zpool_create.kshlib
518 . $(atf_get_srcdir)/zpool_create.cfg
520 verify_disk_count "$DISKS" 1
521 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
522 ksh93 $(atf_get_srcdir)/zpool_create_022_pos.ksh || atf_fail "Testcase failed"
524 zpool_create_022_pos_cleanup()
526 . $(atf_get_srcdir)/../../../include/default.cfg
527 . $(atf_get_srcdir)/zpool_create.kshlib
528 . $(atf_get_srcdir)/zpool_create.cfg
530 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
534 atf_test_case zpool_create_023_neg cleanup
535 zpool_create_023_neg_head()
537 atf_set "descr" "'zpool create -O' should return an error with badly formed parameters."
538 atf_set "require.progs" zpool
539 atf_set "timeout" 2400
541 zpool_create_023_neg_body()
543 atf_expect_fail 'kern/221987 - ZFS does not validate the sharenfs parameter'
544 . $(atf_get_srcdir)/../../../include/default.cfg
545 . $(atf_get_srcdir)/zpool_create.kshlib
546 . $(atf_get_srcdir)/zpool_create.cfg
548 verify_disk_count "$DISKS" 1
549 ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
550 ksh93 $(atf_get_srcdir)/zpool_create_023_neg.ksh || atf_fail "Testcase failed"
552 zpool_create_023_neg_cleanup()
554 . $(atf_get_srcdir)/../../../include/default.cfg
555 . $(atf_get_srcdir)/zpool_create.kshlib
556 . $(atf_get_srcdir)/zpool_create.cfg
558 ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
562 atf_init_test_cases()
565 atf_add_test_case zpool_create_001_pos
566 atf_add_test_case zpool_create_002_pos
567 atf_add_test_case zpool_create_003_pos
568 atf_add_test_case zpool_create_004_pos
569 atf_add_test_case zpool_create_005_pos
570 atf_add_test_case zpool_create_006_pos
571 atf_add_test_case zpool_create_007_neg
572 atf_add_test_case zpool_create_008_pos
573 atf_add_test_case zpool_create_009_neg
574 atf_add_test_case zpool_create_010_neg
575 atf_add_test_case zpool_create_011_neg
576 atf_add_test_case zpool_create_012_neg
577 atf_add_test_case zpool_create_015_neg
578 atf_add_test_case zpool_create_017_neg
579 atf_add_test_case zpool_create_018_pos
580 atf_add_test_case zpool_create_019_pos
581 atf_add_test_case zpool_create_020_pos
582 atf_add_test_case zpool_create_021_pos
583 atf_add_test_case zpool_create_022_pos
584 atf_add_test_case zpool_create_023_neg