ash: copy function tests from hush testsuite
Signed-off-by: Ron Yorston <rmy@pobox.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
parent
2cf4591413
commit
85405c80a2
6
shell/ash_test/ash-misc/func1.right
Normal file
6
shell/ash_test/ash-misc/func1.right
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
Hello
|
||||||
|
Zero: 0
|
||||||
|
One: 1 Param1: World
|
||||||
|
Zero: 0 Param1: Restored
|
||||||
|
Multi line function
|
||||||
|
One: 1
|
16
shell/ash_test/ash-misc/func1.tests
Executable file
16
shell/ash_test/ash-misc/func1.tests
Executable file
@ -0,0 +1,16 @@
|
|||||||
|
f() { echo Hello; }
|
||||||
|
g () { echo One: $# Param1: $1; }
|
||||||
|
h ( )
|
||||||
|
{
|
||||||
|
echo -n 'Multi ' && echo -n 'line '
|
||||||
|
echo function
|
||||||
|
false
|
||||||
|
}
|
||||||
|
|
||||||
|
f
|
||||||
|
echo Zero: $?
|
||||||
|
set -- Restored
|
||||||
|
{ g World; }
|
||||||
|
echo Zero: $? Param1: $1
|
||||||
|
( h )
|
||||||
|
echo One: $?
|
5
shell/ash_test/ash-misc/func2.right
Normal file
5
shell/ash_test/ash-misc/func2.right
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
First 0
|
||||||
|
Second 0
|
||||||
|
First 1
|
||||||
|
Second 1
|
||||||
|
Done
|
9
shell/ash_test/ash-misc/func2.tests
Executable file
9
shell/ash_test/ash-misc/func2.tests
Executable file
@ -0,0 +1,9 @@
|
|||||||
|
i=0
|
||||||
|
while test $i != 2; do
|
||||||
|
f() { echo First $i; }
|
||||||
|
f
|
||||||
|
f() { echo Second $i; }
|
||||||
|
f
|
||||||
|
: $((i++))
|
||||||
|
done
|
||||||
|
echo Done
|
4
shell/ash_test/ash-misc/func3.right
Normal file
4
shell/ash_test/ash-misc/func3.right
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
One:1
|
||||||
|
Zero:0
|
||||||
|
One:1
|
||||||
|
Five:5
|
8
shell/ash_test/ash-misc/func3.tests
Executable file
8
shell/ash_test/ash-misc/func3.tests
Executable file
@ -0,0 +1,8 @@
|
|||||||
|
f() { false; return; echo BAD; };
|
||||||
|
{ f; echo One:$?; }; echo Zero:$?
|
||||||
|
|
||||||
|
f() { false; return; };
|
||||||
|
f; echo One:$?
|
||||||
|
|
||||||
|
f() { return 5; };
|
||||||
|
f; echo Five:$?
|
2
shell/ash_test/ash-misc/func4.right
Normal file
2
shell/ash_test/ash-misc/func4.right
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
24
|
||||||
|
Done
|
7
shell/ash_test/ash-misc/func4.tests
Executable file
7
shell/ash_test/ash-misc/func4.tests
Executable file
@ -0,0 +1,7 @@
|
|||||||
|
func() {
|
||||||
|
eval "echo \"\${val_${1}}\""
|
||||||
|
}
|
||||||
|
|
||||||
|
val_x=24
|
||||||
|
(func x)
|
||||||
|
echo Done
|
6
shell/ash_test/ash-misc/func5.right
Normal file
6
shell/ash_test/ash-misc/func5.right
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
1
|
||||||
|
2
|
||||||
|
3
|
||||||
|
1
|
||||||
|
2
|
||||||
|
3
|
13
shell/ash_test/ash-misc/func5.tests
Executable file
13
shell/ash_test/ash-misc/func5.tests
Executable file
@ -0,0 +1,13 @@
|
|||||||
|
f() { echo $1; }
|
||||||
|
f 1
|
||||||
|
|
||||||
|
f() ( echo $1; )
|
||||||
|
f 2
|
||||||
|
|
||||||
|
f() ( echo $1 )
|
||||||
|
f 3
|
||||||
|
|
||||||
|
f() for i in 1 2 3; do
|
||||||
|
echo $i
|
||||||
|
done
|
||||||
|
f
|
5
shell/ash_test/ash-misc/func_args1.right
Normal file
5
shell/ash_test/ash-misc/func_args1.right
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
params: a b c
|
||||||
|
'f 1 2 3' called
|
||||||
|
params: a b c
|
||||||
|
'f 1 2 3' called
|
||||||
|
params: a b c
|
9
shell/ash_test/ash-misc/func_args1.tests
Executable file
9
shell/ash_test/ash-misc/func_args1.tests
Executable file
@ -0,0 +1,9 @@
|
|||||||
|
|
||||||
|
f() { echo "'f $1 $2 $3' called"; }
|
||||||
|
|
||||||
|
set -- a b c
|
||||||
|
echo "params: $1 $2 $3"
|
||||||
|
f 1 2 3
|
||||||
|
echo "params: $1 $2 $3"
|
||||||
|
true | f 1 2 3
|
||||||
|
echo "params: $1 $2 $3"
|
3
shell/ash_test/ash-misc/func_local1.right
Normal file
3
shell/ash_test/ash-misc/func_local1.right
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
z=a
|
||||||
|
z=z
|
||||||
|
Done
|
5
shell/ash_test/ash-misc/func_local1.tests
Executable file
5
shell/ash_test/ash-misc/func_local1.tests
Executable file
@ -0,0 +1,5 @@
|
|||||||
|
export z=z
|
||||||
|
f() { local z=a; env | grep ^z; }
|
||||||
|
f
|
||||||
|
env | grep ^z
|
||||||
|
echo Done
|
14
shell/ash_test/ash-misc/func_local2.right
Normal file
14
shell/ash_test/ash-misc/func_local2.right
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
1
|
||||||
|
2
|
||||||
|
1
|
||||||
|
2
|
||||||
|
1
|
||||||
|
1
|
||||||
|
2
|
||||||
|
2
|
||||||
|
3
|
||||||
|
2
|
||||||
|
2
|
||||||
|
3
|
||||||
|
1
|
||||||
|
Done
|
7
shell/ash_test/ash-misc/func_local2.tests
Executable file
7
shell/ash_test/ash-misc/func_local2.tests
Executable file
@ -0,0 +1,7 @@
|
|||||||
|
x=1
|
||||||
|
f() { echo $x; local x=$((x+1)); echo $x; }
|
||||||
|
g() { f; echo $x; f; local x=$((x+1)); f; echo $x; f; }
|
||||||
|
f
|
||||||
|
g
|
||||||
|
echo $x
|
||||||
|
echo Done
|
Loading…
Reference in New Issue
Block a user