diff options
author | Denis Vlasenko <vda.linux@googlemail.com> | 2009-04-10 23:23:41 +0000 |
---|---|---|
committer | Denis Vlasenko <vda.linux@googlemail.com> | 2009-04-10 23:23:41 +0000 |
commit | ce4acbbab664e9ab3432189f88b525f10553f674 (patch) | |
tree | d845cf76877865eaa332338bf689f65dda3b1794 /shell/hush_test | |
parent | 6ba6f546ac8016a3acccb19b2eff8b6878a3a87c (diff) | |
download | busybox-w32-ce4acbbab664e9ab3432189f88b525f10553f674.tar.gz busybox-w32-ce4acbbab664e9ab3432189f88b525f10553f674.tar.bz2 busybox-w32-ce4acbbab664e9ab3432189f88b525f10553f674.zip |
hush: add function tests
Diffstat (limited to 'shell/hush_test')
-rw-r--r-- | shell/hush_test/hush-misc/func1.right | 6 | ||||
-rwxr-xr-x | shell/hush_test/hush-misc/func1.tests | 16 | ||||
-rw-r--r-- | shell/hush_test/hush-misc/func2.right | 5 | ||||
-rwxr-xr-x | shell/hush_test/hush-misc/func2.tests | 9 | ||||
-rwxr-xr-x | shell/hush_test/hush-z_slow/leak_all1.tests | 4 | ||||
-rwxr-xr-x | shell/hush_test/hush-z_slow/leak_all2.tests | 6 |
6 files changed, 46 insertions, 0 deletions
diff --git a/shell/hush_test/hush-misc/func1.right b/shell/hush_test/hush-misc/func1.right new file mode 100644 index 000000000..e21665aaf --- /dev/null +++ b/shell/hush_test/hush-misc/func1.right | |||
@@ -0,0 +1,6 @@ | |||
1 | Hello | ||
2 | Zero: 0 | ||
3 | One: 1 Param1: World | ||
4 | Zero: 0 Param1: Restored | ||
5 | Multi line function | ||
6 | One: 1 | ||
diff --git a/shell/hush_test/hush-misc/func1.tests b/shell/hush_test/hush-misc/func1.tests new file mode 100755 index 000000000..ffb269fad --- /dev/null +++ b/shell/hush_test/hush-misc/func1.tests | |||
@@ -0,0 +1,16 @@ | |||
1 | f() { echo Hello; } | ||
2 | g () { echo One: $# Param1: $1; } | ||
3 | h ( ) | ||
4 | { | ||
5 | echo -n 'Multi ' && echo -n 'line ' | ||
6 | echo function | ||
7 | false | ||
8 | } | ||
9 | |||
10 | f | ||
11 | echo Zero: $? | ||
12 | set -- Restored | ||
13 | { g World; } | ||
14 | echo Zero: $? Param1: $1 | ||
15 | ( h ) | ||
16 | echo One: $? | ||
diff --git a/shell/hush_test/hush-misc/func2.right b/shell/hush_test/hush-misc/func2.right new file mode 100644 index 000000000..f2a041da7 --- /dev/null +++ b/shell/hush_test/hush-misc/func2.right | |||
@@ -0,0 +1,5 @@ | |||
1 | First 0 | ||
2 | Second 0 | ||
3 | First 1 | ||
4 | Second 1 | ||
5 | Done | ||
diff --git a/shell/hush_test/hush-misc/func2.tests b/shell/hush_test/hush-misc/func2.tests new file mode 100755 index 000000000..763203f15 --- /dev/null +++ b/shell/hush_test/hush-misc/func2.tests | |||
@@ -0,0 +1,9 @@ | |||
1 | i=0 | ||
2 | while test $i != 2; do | ||
3 | f() { echo First $i; } | ||
4 | f | ||
5 | f() { echo Second $i; } | ||
6 | f | ||
7 | : $((i++)) | ||
8 | done | ||
9 | echo Done | ||
diff --git a/shell/hush_test/hush-z_slow/leak_all1.tests b/shell/hush_test/hush-z_slow/leak_all1.tests index b26e2df02..d244744a6 100755 --- a/shell/hush_test/hush-z_slow/leak_all1.tests +++ b/shell/hush_test/hush-z_slow/leak_all1.tests | |||
@@ -27,6 +27,8 @@ HERE | |||
27 | { : /bin/*; } | 27 | { : /bin/*; } |
28 | set -- par1_$i par2_$i par3_$i par4_$i | 28 | set -- par1_$i par2_$i par3_$i par4_$i |
29 | trap "echo trap$i" WINCH | 29 | trap "echo trap$i" WINCH |
30 | f() { echo $1; } | ||
31 | f >/dev/null | ||
30 | : $((i++)) | 32 | : $((i++)) |
31 | done | 33 | done |
32 | 34 | ||
@@ -55,6 +57,8 @@ HERE | |||
55 | { : /bin/*; } | 57 | { : /bin/*; } |
56 | set -- par1_$i par2_$i par3_$i par4_$i | 58 | set -- par1_$i par2_$i par3_$i par4_$i |
57 | trap "echo trap$i" WINCH | 59 | trap "echo trap$i" WINCH |
60 | f() { echo $1; } | ||
61 | f >/dev/null | ||
58 | : $((i++)) | 62 | : $((i++)) |
59 | done | 63 | done |
60 | 64 | ||
diff --git a/shell/hush_test/hush-z_slow/leak_all2.tests b/shell/hush_test/hush-z_slow/leak_all2.tests index 8fb1ca9b4..d51ea8063 100755 --- a/shell/hush_test/hush-z_slow/leak_all2.tests +++ b/shell/hush_test/hush-z_slow/leak_all2.tests | |||
@@ -27,6 +27,8 @@ HERE | |||
27 | } 1<>/dev/null | 27 | } 1<>/dev/null |
28 | while { echo $dev_null >>$dev_null; }; do cat <"$dev_null"; break; done | 28 | while { echo $dev_null >>$dev_null; }; do cat <"$dev_null"; break; done |
29 | ( until { echo $dev_null >>$dev_null | false; }; do cat <"$dev_null"; break; done ) <$dev_null | 29 | ( until { echo $dev_null >>$dev_null | false; }; do cat <"$dev_null"; break; done ) <$dev_null |
30 | f() { echo $1; } | ||
31 | f >/dev/null | ||
30 | 32 | ||
31 | memleak | 33 | memleak |
32 | 34 | ||
@@ -53,6 +55,8 @@ HERE | |||
53 | } 1<>/dev/null | 55 | } 1<>/dev/null |
54 | while { echo $dev_null >>$dev_null; }; do cat <"$dev_null"; break; done | 56 | while { echo $dev_null >>$dev_null; }; do cat <"$dev_null"; break; done |
55 | ( until { echo $dev_null >>$dev_null | false; }; do cat <"$dev_null"; break; done ) <$dev_null | 57 | ( until { echo $dev_null >>$dev_null | false; }; do cat <"$dev_null"; break; done ) <$dev_null |
58 | f() { echo $1; } | ||
59 | f >/dev/null | ||
56 | 60 | ||
57 | # And same again | 61 | # And same again |
58 | 62 | ||
@@ -77,6 +81,8 @@ HERE | |||
77 | } 1<>/dev/null | 81 | } 1<>/dev/null |
78 | while { echo $dev_null >>$dev_null; }; do cat <"$dev_null"; break; done | 82 | while { echo $dev_null >>$dev_null; }; do cat <"$dev_null"; break; done |
79 | ( until { echo $dev_null >>$dev_null | false; }; do cat <"$dev_null"; break; done ) <$dev_null | 83 | ( until { echo $dev_null >>$dev_null | false; }; do cat <"$dev_null"; break; done ) <$dev_null |
84 | f() { echo $1; } | ||
85 | f >/dev/null | ||
80 | 86 | ||
81 | memleak | 87 | memleak |
82 | kb=$? | 88 | kb=$? |