diff options
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 @@ +Hello +Zero: 0 +One: 1 Param1: World +Zero: 0 Param1: Restored +Multi line function +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 @@ +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: $? 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 @@ +First 0 +Second 0 +First 1 +Second 1 +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 @@ +i=0 +while test $i != 2; do +    f() { echo First $i; } +    f +    f() { echo Second $i; } +    f +    : $((i++)) +done +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      { : /bin/*; }      set -- par1_$i par2_$i par3_$i par4_$i      trap "echo trap$i" WINCH +    f() { echo $1; } +    f >/dev/null      : $((i++))  done @@ -55,6 +57,8 @@ HERE      { : /bin/*; }      set -- par1_$i par2_$i par3_$i par4_$i      trap "echo trap$i" WINCH +    f() { echo $1; } +    f >/dev/null      : $((i++))  done 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  } 1<>/dev/null  while { echo $dev_null >>$dev_null; }; do cat <"$dev_null"; break; done  ( until { echo $dev_null >>$dev_null | false; }; do cat <"$dev_null"; break; done ) <$dev_null +f() { echo $1; } +f >/dev/null  memleak @@ -53,6 +55,8 @@ HERE  } 1<>/dev/null  while { echo $dev_null >>$dev_null; }; do cat <"$dev_null"; break; done  ( until { echo $dev_null >>$dev_null | false; }; do cat <"$dev_null"; break; done ) <$dev_null +f() { echo $1; } +f >/dev/null  # And same again @@ -77,6 +81,8 @@ HERE  } 1<>/dev/null  while { echo $dev_null >>$dev_null; }; do cat <"$dev_null"; break; done  ( until { echo $dev_null >>$dev_null | false; }; do cat <"$dev_null"; break; done ) <$dev_null +f() { echo $1; } +f >/dev/null  memleak  kb=$?  | 
