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 devices_001_pos cleanup
30devices_001_pos_head()
31{
32	atf_set "descr" "Setting devices=on on file system, the devices files in this filesystem can be used."
33	atf_set "require.progs"  zfs
34}
35devices_001_pos_body()
36{
37	atf_expect_fail "The devices property is not yet supported on FreeBSD"
38	. $(atf_get_srcdir)/../../include/default.cfg
39	. $(atf_get_srcdir)/devices_common.kshlib
40	. $(atf_get_srcdir)/devices.cfg
41
42	verify_disk_count "$DISKS" 1
43	ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
44	ksh93 $(atf_get_srcdir)/devices_001_pos.ksh || atf_fail "Testcase failed"
45}
46devices_001_pos_cleanup()
47{
48	. $(atf_get_srcdir)/../../include/default.cfg
49	. $(atf_get_srcdir)/devices_common.kshlib
50	. $(atf_get_srcdir)/devices.cfg
51
52	ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
53}
54
55
56atf_test_case devices_002_neg cleanup
57devices_002_neg_head()
58{
59	atf_set "descr" "Setting devices=off on file system, the devices files in this filesystem can not be used."
60	atf_set "require.progs"  zfs
61}
62devices_002_neg_body()
63{
64	atf_expect_fail "The devices property is not yet supported on FreeBSD"
65	. $(atf_get_srcdir)/../../include/default.cfg
66	. $(atf_get_srcdir)/devices_common.kshlib
67	. $(atf_get_srcdir)/devices.cfg
68
69	verify_disk_count "$DISKS" 1
70	ksh93 $(atf_get_srcdir)/setup.ksh || atf_fail "Setup failed"
71	ksh93 $(atf_get_srcdir)/devices_002_neg.ksh || atf_fail "Testcase failed"
72}
73devices_002_neg_cleanup()
74{
75	. $(atf_get_srcdir)/../../include/default.cfg
76	. $(atf_get_srcdir)/devices_common.kshlib
77	. $(atf_get_srcdir)/devices.cfg
78
79	ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
80}
81
82
83atf_test_case devices_003_pos cleanup
84devices_003_pos_head()
85{
86	atf_set "descr" "Writing random data into /dev/zfs should do no harm."
87}
88devices_003_pos_body()
89{
90	. $(atf_get_srcdir)/../../include/default.cfg
91	. $(atf_get_srcdir)/devices_common.kshlib
92	. $(atf_get_srcdir)/devices.cfg
93
94	ksh93 $(atf_get_srcdir)/devices_003_pos.ksh || atf_fail "Testcase failed"
95}
96devices_003_pos_cleanup()
97{
98	. $(atf_get_srcdir)/../../include/default.cfg
99	. $(atf_get_srcdir)/devices_common.kshlib
100	. $(atf_get_srcdir)/devices.cfg
101
102	ksh93 $(atf_get_srcdir)/cleanup.ksh || atf_fail "Cleanup failed"
103}
104
105
106atf_init_test_cases()
107{
108
109	atf_add_test_case devices_001_pos
110	atf_add_test_case devices_002_neg
111	atf_add_test_case devices_003_pos
112}
113