From ef8ca7bad41db852a41ffb85c9ad91e057acc9c9 Mon Sep 17 00:00:00 2001 From: jilles Date: Sat, 12 Aug 2017 19:17:48 +0000 Subject: [PATCH] sh: Add tests for sh -c that already pass. PR: 220587 Submitted by: Ryan Moeller --- bin/sh/tests/Makefile | 1 + bin/sh/tests/invocation/Makefile | 15 +++++++++++++++ bin/sh/tests/invocation/sh-ac1.0 | 7 +++++++ bin/sh/tests/invocation/sh-c1.0 | 4 ++++ bin/sh/tests/invocation/sh-ca1.0 | 7 +++++++ bin/sh/tests/invocation/sh-fca1.0 | 7 +++++++ etc/mtree/BSD.tests.dist | 2 ++ 7 files changed, 43 insertions(+) create mode 100644 bin/sh/tests/invocation/Makefile create mode 100644 bin/sh/tests/invocation/sh-ac1.0 create mode 100644 bin/sh/tests/invocation/sh-c1.0 create mode 100644 bin/sh/tests/invocation/sh-ca1.0 create mode 100644 bin/sh/tests/invocation/sh-fca1.0 diff --git a/bin/sh/tests/Makefile b/bin/sh/tests/Makefile index d93e19aea7e1..59835cb73520 100644 --- a/bin/sh/tests/Makefile +++ b/bin/sh/tests/Makefile @@ -6,6 +6,7 @@ TESTS_SUBDIRS+= builtins TESTS_SUBDIRS+= errors TESTS_SUBDIRS+= execution TESTS_SUBDIRS+= expansion +TESTS_SUBDIRS+= invocation TESTS_SUBDIRS+= parameters TESTS_SUBDIRS+= parser TESTS_SUBDIRS+= set-e diff --git a/bin/sh/tests/invocation/Makefile b/bin/sh/tests/invocation/Makefile new file mode 100644 index 000000000000..cd234bb7d42f --- /dev/null +++ b/bin/sh/tests/invocation/Makefile @@ -0,0 +1,15 @@ +# $FreeBSD$ + +PACKAGE= tests + +TESTSDIR= ${TESTSBASE}/bin/sh/${.CURDIR:T} + +.PATH: ${.CURDIR:H} +ATF_TESTS_SH= functional_test + +${PACKAGE}FILES+= sh-ac1.0 +${PACKAGE}FILES+= sh-c1.0 +${PACKAGE}FILES+= sh-ca1.0 +${PACKAGE}FILES+= sh-fca1.0 + +.include diff --git a/bin/sh/tests/invocation/sh-ac1.0 b/bin/sh/tests/invocation/sh-ac1.0 new file mode 100644 index 000000000000..0e0818b8a2c4 --- /dev/null +++ b/bin/sh/tests/invocation/sh-ac1.0 @@ -0,0 +1,7 @@ +# $FreeBSD$ +# Test that attached options before c are processed + +case `${SH} -ac 'echo $-:$0' moo` in +*a*:moo) true ;; +*) false ;; +esac diff --git a/bin/sh/tests/invocation/sh-c1.0 b/bin/sh/tests/invocation/sh-c1.0 new file mode 100644 index 000000000000..6bda19837b90 --- /dev/null +++ b/bin/sh/tests/invocation/sh-c1.0 @@ -0,0 +1,4 @@ +# $FreeBSD$ +# Test that -c executes command_string with the given name and arg + +${SH} -c 'echo $0 $@' moo foo | grep -qx -- "moo foo" diff --git a/bin/sh/tests/invocation/sh-ca1.0 b/bin/sh/tests/invocation/sh-ca1.0 new file mode 100644 index 000000000000..188b6453db2a --- /dev/null +++ b/bin/sh/tests/invocation/sh-ca1.0 @@ -0,0 +1,7 @@ +# $FreeBSD$ +# Test that attached options after c are processed + +case `${SH} -ca 'echo $-:$0' moo` in +*a*:moo) true ;; +*) false ;; +esac diff --git a/bin/sh/tests/invocation/sh-fca1.0 b/bin/sh/tests/invocation/sh-fca1.0 new file mode 100644 index 000000000000..c010a5ebacdf --- /dev/null +++ b/bin/sh/tests/invocation/sh-fca1.0 @@ -0,0 +1,7 @@ +# $FreeBSD$ +# Test that attached options before and after c are processed + +case `${SH} -fca 'echo $-:$-:$0:$@' foo -bar` in +*f*:*a*:foo:-bar) true ;; +*) false ;; +esac diff --git a/etc/mtree/BSD.tests.dist b/etc/mtree/BSD.tests.dist index 30b04def22f5..632e4d70e909 100644 --- a/etc/mtree/BSD.tests.dist +++ b/etc/mtree/BSD.tests.dist @@ -39,6 +39,8 @@ .. expansion .. + invocation + .. parameters .. parser