aboutsummaryrefslogtreecommitdiff
path: root/bin/mkdir
diff options
context:
space:
mode:
authorAlan Somers <asomers@FreeBSD.org>2017-09-07 16:54:47 +0000
committerAlan Somers <asomers@FreeBSD.org>2017-09-07 16:54:47 +0000
commit014404db1a704b3bc65907272eb98686f84751ae (patch)
treee7d97eddf827fad6062dc8c74171891cb1c7aaf7 /bin/mkdir
parentd1c2e46d9c70e252c495028c40b00db218ac0bb8 (diff)
Notes
Diffstat (limited to 'bin/mkdir')
-rw-r--r--bin/mkdir/Makefile3
-rw-r--r--bin/mkdir/tests/Makefile5
-rw-r--r--bin/mkdir/tests/mkdir_test.sh61
3 files changed, 69 insertions, 0 deletions
diff --git a/bin/mkdir/Makefile b/bin/mkdir/Makefile
index 45876288fc40d..ab05a100f39b5 100644
--- a/bin/mkdir/Makefile
+++ b/bin/mkdir/Makefile
@@ -4,4 +4,7 @@
PACKAGE=runtime
PROG= mkdir
+HAS_TESTS=
+SUBDIR.${MK_TESTS}+= tests
+
.include <bsd.prog.mk>
diff --git a/bin/mkdir/tests/Makefile b/bin/mkdir/tests/Makefile
new file mode 100644
index 0000000000000..3b28a958bea0c
--- /dev/null
+++ b/bin/mkdir/tests/Makefile
@@ -0,0 +1,5 @@
+# $FreeBSD$
+
+ATF_TESTS_SH+= mkdir_test
+
+.include <bsd.test.mk>
diff --git a/bin/mkdir/tests/mkdir_test.sh b/bin/mkdir/tests/mkdir_test.sh
new file mode 100644
index 0000000000000..985a486d20758
--- /dev/null
+++ b/bin/mkdir/tests/mkdir_test.sh
@@ -0,0 +1,61 @@
+#
+# Copyright 2017 Shivansh Rai
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+# SUCH DAMAGE.
+#
+# $FreeBSD$
+#
+
+usage_output='usage: mkdir'
+
+atf_test_case invalid_usage
+invalid_usage_head()
+{
+ atf_set "descr" "Verify that an invalid usage with a supported option produces a valid error message"
+}
+
+invalid_usage_body()
+{
+ atf_check -s not-exit:0 -e inline:"mkdir: option requires an argument -- m
+usage: mkdir [-pv] [-m mode] directory_name ...
+" mkdir -m
+ atf_check -s not-exit:0 -e match:"$usage_output" mkdir -p
+ atf_check -s not-exit:0 -e match:"$usage_output" mkdir -v
+}
+
+atf_test_case no_arguments
+no_arguments_head()
+{
+ atf_set "descr" "Verify that mkdir(1) fails and generates a valid usage message when no arguments are supplied"
+}
+
+no_arguments_body()
+{
+ atf_check -s not-exit:0 -e match:"$usage_output" mkdir
+}
+
+atf_init_test_cases()
+{
+ atf_add_test_case invalid_usage
+ atf_add_test_case no_arguments
+}