grub2: bring back build of aros-side grub2 tools
[AROS.git] / arch / all-pc / boot / grub2-aros / tests / grub_script_functions.in
blob3e69014d6b34c1345f34e2b4e9582aec03c6fa96
1 #! @builddir@/grub-shell-tester
3 # Run GRUB script in a Qemu instance
4 # Copyright (C) 2010  Free Software Foundation, Inc.
6 # GRUB is free software: you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation, either version 3 of the License, or
9 # (at your option) any later version.
11 # GRUB is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 # GNU General Public License for more details.
16 # You should have received a copy of the GNU General Public License
17 # along with GRUB.  If not, see <http://www.gnu.org/licenses/>.
19 echo parameter count
20 function fcount {
21   echo fcount "$#"
24 fcount
25 fcount a
26 fcount a b
28 echo parameter count, with nesting
29 function ffcount {
30   echo ffcount "$#"
31   fcount
32   fcount a
33   fcount a b
36 ffcount
37 ffcount 1
38 ffcount 1 2
40 echo parameters
41 function fparam {
42   echo fparam 1 $1
43   echo fparam 2 $2
44   echo fparam 3 $3
47 fparam
48 fparam a
49 fparam a b
51 echo parameters, with nesting
52 function ffparam {
53   echo ffparam 1 $1
54   echo ffparam 2 $2
55   echo ffparam 3 $3
56   fparam
57   fparam a
58   fparam a b
61 ffparam
62 ffparam 1
63 ffparam 1 2
65 echo parameter expansion with specials
66 function fstar {
67   for f in $*
68   do
69     echo fstar $f
70   done
72   for f in aaa$*bbb
73   do
74     echo fstar $f
75   done
78 fstar
79 fstar a
80 fstar a "1 2"
81 fstar a "1 2" b
83 function fdqstar {
84   for f in "$*"
85   do
86     echo fdqstar $f
87   done
89   for f in aaa"$*"bbb
90   do
91     echo fdqstar $f
92   done
94   for f in "aaa$*bbb"
95   do
96     echo fdqstar $f
97   done
100 fdqstar
101 fdqstar a
102 fdqstar a "1 2"
103 fdqstar a "1 2" b
105 function fat {
106   for f in $@
107   do
108     echo fat $f
109   done
111   for f in aaa$@bbb
112   do
113     echo fat $f
114   done
118 fat a
119 fat a "1 2"
120 fat a "1 2" b
121 fat a "1 2" b "c d"
122 fat a "1 2" b "c d" e
124 function fdqat {
125   for f in "$@"
126   do
127     echo fdqat $f
128   done
130   for f in aaa"$@"bbb
131   do
132     echo fdqat $f
133   done
135   for f in "aaa$@bbb"
136   do
137     echo fdqat $f
138   done
141 # fdqat # this case needs special handling, lets ignore till we really need it.
142 fdqat a
143 fdqat a "1 2"
144 fdqat a "1 2" b
145 fdqat a "1 2" b "c d"
146 fdqat a "1 2" b "c d" e