xref: /illumos-gate/usr/src/test/zfs-tests/tests/functional/cli_root/zfs_mount/zfs_mount_012_neg.ksh (revision 873c4903a52d089cd8234b79d24f5a3fc3bccc82)
1*873c4903SPrakash Surya#!/bin/ksh -p
2*873c4903SPrakash Surya#
3*873c4903SPrakash Surya# This file and its contents are supplied under the terms of the
4*873c4903SPrakash Surya# Common Development and Distribution License ("CDDL"), version 1.0.
5*873c4903SPrakash Surya# You may only use this file in accordance with the terms of version
6*873c4903SPrakash Surya# 1.0 of the CDDL.
7*873c4903SPrakash Surya#
8*873c4903SPrakash Surya# A full copy of the text of the CDDL should have accompanied this
9*873c4903SPrakash Surya# source.  A copy of the CDDL is also available via the Internet at
10*873c4903SPrakash Surya# http://www.illumos.org/license/CDDL.
11*873c4903SPrakash Surya#
12*873c4903SPrakash Surya
13*873c4903SPrakash Surya#
14*873c4903SPrakash Surya# Copyright (c) 2015 by Delphix. All rights reserved.
15*873c4903SPrakash Surya#
16*873c4903SPrakash Surya
17*873c4903SPrakash Surya. $STF_SUITE/include/libtest.shlib
18*873c4903SPrakash Surya
19*873c4903SPrakash Surya#
20*873c4903SPrakash Surya# DESCRIPTION:
21*873c4903SPrakash Surya# Verify that zfs mount should fail with a non-empty directory
22*873c4903SPrakash Surya#
23*873c4903SPrakash Surya# STRATEGY:
24*873c4903SPrakash Surya# 1. Unmount the dataset
25*873c4903SPrakash Surya# 2. Create a new empty directory
26*873c4903SPrakash Surya# 3. Set the dataset's mountpoint
27*873c4903SPrakash Surya# 4. Attempt to mount the dataset
28*873c4903SPrakash Surya# 5. Verify the mount succeeds
29*873c4903SPrakash Surya# 6. Unmount the dataset
30*873c4903SPrakash Surya# 7. Create a file in the directory created in step 2
31*873c4903SPrakash Surya# 8. Attempt to mount the dataset
32*873c4903SPrakash Surya# 9. Verify the mount fails
33*873c4903SPrakash Surya#
34*873c4903SPrakash Surya
35*873c4903SPrakash Suryaverify_runnable "both"
36*873c4903SPrakash Surya
37*873c4903SPrakash Suryalog_assert "zfs mount fails with non-empty directory"
38*873c4903SPrakash Surya
39*873c4903SPrakash Suryafs=$TESTPOOL/$TESTFS
40*873c4903SPrakash Surya
41*873c4903SPrakash Suryalog_must zfs umount $fs
42*873c4903SPrakash Suryalog_must mkdir -p $TESTDIR
43*873c4903SPrakash Suryalog_must zfs set mountpoint=$TESTDIR $fs
44*873c4903SPrakash Suryalog_must zfs mount $fs
45*873c4903SPrakash Suryalog_must zfs umount $fs
46*873c4903SPrakash Suryalog_must touch $TESTDIR/testfile.$$
47*873c4903SPrakash Suryalog_mustnot zfs mount $fs
48*873c4903SPrakash Suryalog_must rm -rf $TESTDIR
49*873c4903SPrakash Surya
50*873c4903SPrakash Suryalog_pass "zfs mount fails non-empty directory as expected."
51