Magellan Linux

Diff of /tags/grubby-8_40_20170627/test.sh

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1720 by niro, Sat Feb 18 00:51:28 2012 UTC revision 2992 by niro, Thu Jun 30 10:35:14 2016 UTC
# Line 48  oneTest() { Line 48  oneTest() {
48      typeset mode=$1 cfg=test/$2 correct=test/results/$3      typeset mode=$1 cfg=test/$2 correct=test/results/$3
49      shift 3      shift 3
50    
51        local ENV_FILE=""
52        if [ "$mode" == "--grub2" ]; then
53            ENV_FILE="test/grub2-support_files/env_temp"
54            if [ "$1" == "--env" ]; then
55                cp "test/grub2-support_files/$2" "$ENV_FILE"
56                shift 2
57            else
58                cp "test/grub2-support_files/grubenv.0" "$ENV_FILE"
59            fi
60            ENV_FILE="--env=$ENV_FILE"
61        fi
62    
63    
64      echo "$testing ... $mode $cfg $correct"      echo "$testing ... $mode $cfg $correct"
65      runme=( ./grubby "$mode" --bad-image-okay -c "$cfg" -o - "$@" )      runme=( ./grubby "$mode" --bad-image-okay $ENV_FILE -c "$cfg" -o - "$@" )
66      if "${runme[@]}" | cmp "$correct" > /dev/null; then      if "${runme[@]}" | cmp "$correct" > /dev/null; then
67   (( pass++ ))   (( pass++ ))
68   if $opt_verbose; then   if $opt_verbose; then
# Line 75  oneDisplayTest() { Line 88  oneDisplayTest() {
88      typeset mode=$1 cfg=test/$2 correct=test/results/$3      typeset mode=$1 cfg=test/$2 correct=test/results/$3
89      shift 3      shift 3
90    
91        local ENV_FILE=""
92        if [ "$mode" == "--grub2" ]; then
93            ENV_FILE="test/grub2-support_files/env_temp"
94            if [ "$1" == "--env" ]; then
95                cp "test/grub2-support_files/$2" "$ENV_FILE"
96                shift 2
97            else
98                cp "test/grub2-support_files/grubenv.0" "$ENV_FILE"
99            fi
100            ENV_FILE="--env=$ENV_FILE"
101        fi
102    
103        local BIO="--bad-image-okay"
104        if [ "$1" == "--bad-image-bad" ]; then
105            BIO=""
106            shift
107        fi
108    
109      echo "$testing ... $mode $cfg $correct"      echo "$testing ... $mode $cfg $correct"
110      runme=( ./grubby "$mode" --bad-image-okay -c "$cfg" "$@" )      runme=( ./grubby "$mode" $BIO $ENV_FILE -c "$cfg" "$@" )
111      if "${runme[@]}" | cmp "$correct" > /dev/null; then      if "${runme[@]}" 2>&1 | cmp "$correct" > /dev/null; then
112   (( pass++ ))   (( pass++ ))
113   if $opt_verbose; then   if $opt_verbose; then
114      echo -------------------------------------------------------------      echo -------------------------------------------------------------
115      echo -n "PASS: "      echo -n "PASS: "
116      printf "%q " "${runme[@]}"; echo      printf "%q " "${runme[@]}"; echo
117      "${runme[@]}" | diff -U30 "$cfg" -      "${runme[@]}" 2>&1 | diff -U30 "$cfg" -
118      echo      echo
119   fi   fi
120      else      else
# Line 91  oneDisplayTest() { Line 122  oneDisplayTest() {
122   echo -------------------------------------------------------------   echo -------------------------------------------------------------
123   echo -n "FAIL: "   echo -n "FAIL: "
124   printf "%q " "${runme[@]}"; echo   printf "%q " "${runme[@]}"; echo
125   "${runme[@]}" | diff -U30 "$correct" -   "${runme[@]}" 2>&1 | diff -U30 "$correct" -
126     echo
127        fi
128    }
129    
130    commandTest() {
131        description=$1
132        cmd0=$2
133        text1=$3
134        shift 3
135        echo "$description"
136        output0=$(mktemp)
137    
138        $cmd0 > $output0
139    
140        if echo $text1 | cmp $output0 - >/dev/null; then
141     (( pass++))
142     if $opt_verbose; then
143        echo -------------------------------------------------------------
144        echo -n "PASS: "
145        printf "%q " "\"$cmd0\""; echo
146        echo $text1 | diff -U30 $output0 -
147        echo
148     fi
149        else
150     (( fail++ ))
151     echo -------------------------------------------------------------
152     echo -n "FAIL: "
153     printf "%q " "\"$cmd0\""; echo
154     echo $text1 | diff -U30 $output0 -
155   echo   echo
156      fi      fi
157  }  }
158    
159  # generate convenience functions  # generate convenience functions
160  for b in $(./grubby --help | \  for b in $(./grubby --help | \
161   sed -n 's/^.*--\([^ ]*\) *configure \1 bootloader$/\1/p'); do   sed -n 's/^.*--\([^ ]*\) *configure \1 bootloader.*/\1/p'); do
162      eval "${b}Test() { [[ \"$b\" == \$opt_bootloader ]] && oneTest --$b \"\$@\"; }"      eval "${b}Test() { [[ \"$b\" == \$opt_bootloader ]] && oneTest --$b \"\$@\"; }"
163      eval "${b}DisplayTest() { [[ \"$b\" == \$opt_bootloader ]] && oneDisplayTest --$b \"\$@\"; }"      eval "${b}DisplayTest() { [[ \"$b\" == \$opt_bootloader ]] && oneDisplayTest --$b \"\$@\"; }"
164  done  done
# Line 121  while true; do Line 181  while true; do
181  done  done
182    
183  export MALLOC_CHECK_=2  export MALLOC_CHECK_=2
184    if [ -n "${RANDOM}" ]; then
185        export MALLOC_PERTURB_=$(($RANDOM % 255 + 1))
186    else
187        export MALLOC_PERTURB_=1
188    fi
189    
190  testing="Parse/write comparison"  testing="Parse/write comparison"
191  for n in test/*.[0-9]*; do  for n in test/*.[0-9]*; do
192        [ -d $n ] && continue
193      n=${n#*/} # remove test/      n=${n#*/} # remove test/
194      b=${n%.*} # remove suffix      b=${n%.*} # remove suffix
195      [[ $b == $opt_bootloader ]] || continue      [[ $b == $opt_bootloader ]] || continue
# Line 198  grubTest grub.4 default/g4.1 --boot-file Line 264  grubTest grub.4 default/g4.1 --boot-file
264  grubTest grub.4 default/g4.2 --boot-filesystem=/ --set-default=/boot/vmlinuz-2.4.7-ac3 --remove-kernel /boot/vmlinuz-2.4.7-2.5 --add-kernel=/boot/new-kernel --copy-default --title New_Title  grubTest grub.4 default/g4.2 --boot-filesystem=/ --set-default=/boot/vmlinuz-2.4.7-ac3 --remove-kernel /boot/vmlinuz-2.4.7-2.5 --add-kernel=/boot/new-kernel --copy-default --title New_Title
265  grubTest grub.6 default/g6.1 --remove-kernel=/boot/vmlinuz-2.4.7-2.9 --boot-filesystem=/  grubTest grub.6 default/g6.1 --remove-kernel=/boot/vmlinuz-2.4.7-2.9 --boot-filesystem=/
266    
267    testing="GRUB default index directive"
268    grubTest grub.13 setdefaultindex/g.13.0 --set-default-index=0
269    grubTest grub.13 setdefaultindex/g.13.1 --set-default-index=1
270    grubTest grub.13 setdefaultindex/g.13.9 --set-default-index=9
271    
272    testing="GRUB add initrd"
273    grubTest grub.14 add/g1.7 --boot-filesystem=/ --update-kernel=/vmlinuz-4.0.0-0.rc4.git1.4.fc23.x86_64 --initrd /initramfs-4.0.0-0.rc4.git1.4.fc23.x86_64.img '--args= LANG=en_US.UTF-8' '--title=Fedora (4.0.0-0.rc4.git1.4.fc23.x86_64) 23 (Rawhide)'
274    
275  testing="GRUB display default index"  testing="GRUB display default index"
276  grubDisplayTest grub.1 defaultindex/0 --default-index  grubDisplayTest grub.1 defaultindex/0 --default-index
277  grubDisplayTest grub.2 defaultindex/0 --default-index  grubDisplayTest grub.2 defaultindex/0 --default-index
# Line 211  grubDisplayTest grub.9 defaultindex/0 -- Line 285  grubDisplayTest grub.9 defaultindex/0 --
285  grubDisplayTest grub.10 defaultindex/0 --default-index  grubDisplayTest grub.10 defaultindex/0 --default-index
286  grubDisplayTest grub.10 defaultindex/0 --default-index  grubDisplayTest grub.10 defaultindex/0 --default-index
287    
288    testing="GRUB display default title"
289    grubDisplayTest grub.1 defaulttitle/g.1 --default-title
290    grubDisplayTest grub.2 defaulttitle/g.2 --default-title
291    grubDisplayTest grub.3 defaulttitle/g.3 --default-title
292    grubDisplayTest grub.4 defaulttitle/g.4 --default-title
293    grubDisplayTest grub.5 defaulttitle/g.5 --default-title
294    grubDisplayTest grub.6 defaulttitle/g.6 --default-title
295    grubDisplayTest grub.7 defaulttitle/g.7 --default-title
296    grubDisplayTest grub.8 defaulttitle/g.8 --default-title
297    grubDisplayTest grub.9 defaulttitle/g.9 --default-title
298    grubDisplayTest grub.10 defaulttitle/g.10 --default-title
299    grubDisplayTest grub.11 defaulttitle/g.11 --default-title
300    
301    testing="GRUB display default kernel"
302    grubDisplayTest grub.1 defaultkernel/g.1 --default-kernel
303    
304  testing="LILO default directive"  testing="LILO default directive"
305  liloTest lilo.1 default/l1.1 --set-default=/boot/vmlinuz-2.4.18-4  liloTest lilo.1 default/l1.1 --set-default=/boot/vmlinuz-2.4.18-4
306  liloTest lilo.1 default/l1.2 --remove-kernel=/boot/vmlinuz-2.4.18-4smp  liloTest lilo.1 default/l1.2 --remove-kernel=/boot/vmlinuz-2.4.18-4smp
# Line 218  liloTest lilo.1 default/l1.3 --add-kerne Line 308  liloTest lilo.1 default/l1.3 --add-kerne
308      --copy-default      --copy-default
309  liloTest lilo.1 default/l1.4 --add-kernel /boot/kernel --title label \  liloTest lilo.1 default/l1.4 --add-kernel /boot/kernel --title label \
310      --copy-default --make-default      --copy-default --make-default
311    liloDisplayTest lilo.1 defaultkernel/l1.1 --default-kernel
312    
313  testing="Z/IPL default directive"  testing="Z/IPL default directive"
314  ziplTest zipl.1 default/z1.1 --add-kernel /boot/new-kernel --title test  ziplTest zipl.1 default/z1.1 --add-kernel /boot/new-kernel --title test
315  ziplTest zipl.1 default/z1.2 --add-kernel /boot/new-kernel --title test --make-default  ziplTest zipl.1 default/z1.2 --add-kernel /boot/new-kernel --title test --make-default
316    testing="Z/IPL display default index"
317    ziplDisplayTest zipl.1 defaultindex/0 --default-index
318    testing="Z/IPL display default title"
319    ziplDisplayTest zipl.1 defaulttitle/z.1 --default-title
320    testing="Z/IPL display default kernel"
321    ziplDisplayTest zipl.1 defaultkernel/z.1 --default-kernel
322    
323  testing="GRUB fallback directive"  testing="GRUB fallback directive"
324  grubTest grub.5 fallback/g5.1 --remove-kernel=/boot/vmlinuz-2.4.7-ac3 \  grubTest grub.5 fallback/g5.1 --remove-kernel=/boot/vmlinuz-2.4.7-ac3 \
# Line 232  grubTest grub.5 fallback/g5.3 --remove-k Line 329  grubTest grub.5 fallback/g5.3 --remove-k
329      --boot-filesystem=/ --copy-default --add-kernel=/boot/new-kernel \      --boot-filesystem=/ --copy-default --add-kernel=/boot/new-kernel \
330      --title="Some_Title"      --title="Some_Title"
331    
332    testing="Extlinux default directive"
333    extlinuxTest extlinux.1 default/extlinux1.1 --boot-filesystem=/boot --add-kernel /boot/new-kernel --title Some_Title
334    extlinuxTest extlinux.1 default/extlinux1.2 --boot-filesystem=/boot --add-kernel /boot/new-kernel --title Some_Title --make-default
335    extlinuxTest extlinux.3 default/extlinux3.1 --boot-filesystem=/boot --set-default=/boot/vmlinuz-3.12.0-2.fc21.i686
336    extlinuxTest extlinux.3 default/extlinux3.2 --boot-filesystem=/boot --set-default=/boot/vmlinuz-3.12.0-2.fc21.i686+PAE
337    
338  testing="GRUB new kernel argument handling"  testing="GRUB new kernel argument handling"
339  grubTest grub.1 args/g1.1 --boot-filesystem=/boot \  grubTest grub.1 args/g1.1 --boot-filesystem=/boot \
340      --add-kernel=/boot/foo --title=some_title --args="1234" --copy-default      --add-kernel=/boot/foo --title=some_title --args="1234" --copy-default
341  grubTest grub.1 args/g1.2 --boot-filesystem=/boot \  grubTest grub.1 args/g1.2 --boot-filesystem=/boot \
342      --add-kernel=/boot/foo --title=some_title --args="1234"      --add-kernel=/boot/foo --title=some_title --args="1234"
343    
344    testing="Extlinux new kernel argument handling"
345    extlinuxTest extlinux.1 args/extlinux1.1 --boot-filesystem=/boot \
346        --add-kernel=/boot/foo --title=some_title --args="1234" --copy-default
347    extlinuxTest extlinux.1 args/extlinux1.2 --boot-filesystem=/boot \
348        --add-kernel=/boot/foo --title=some_title --args="1234"
349    
350  testing="GRUB remove kernel"  testing="GRUB remove kernel"
351  grubTest grub.7 remove/g7.1 --boot-filesystem=/ \  grubTest grub.7 remove/g7.1 --boot-filesystem=/ \
352      --remove-kernel=/boot/vmlinuz-2.4.7-2.5      --remove-kernel=/boot/vmlinuz-2.4.7-2.5
# Line 255  testing="Z/IPL remove kernel" Line 364  testing="Z/IPL remove kernel"
364  ziplTest zipl.1 remove/z1.1 --remove-kernel=/boot/vmlinuz-2.4.9-38  ziplTest zipl.1 remove/z1.1 --remove-kernel=/boot/vmlinuz-2.4.9-38
365  ziplTest zipl.1 remove/z1.2 --remove-kernel=DEFAULT  ziplTest zipl.1 remove/z1.2 --remove-kernel=DEFAULT
366    
367    testing="Extlinux remove kernel"
368    extlinuxTest extlinux.4 remove/extlinux4.1 --boot-filesystem=/ \
369        --remove-kernel=/boot/vmlinuz-3.11.7-301.fc20.i686
370    extlinuxTest extlinux.3 remove/extlinux3.1 --boot-filesystem=/ \
371        --remove-kernel=DEFAULT
372    
373  testing="GRUB update kernel argument handling"  testing="GRUB update kernel argument handling"
374  grubTest grub.1 updargs/g1.1 --update-kernel=DEFAULT --args="root=/dev/hda1"  grubTest grub.1 updargs/g1.1 --update-kernel=DEFAULT --args="root=/dev/hda1"
375  grubTest grub.1 updargs/g1.2 --update-kernel=DEFAULT \  grubTest grub.1 updargs/g1.2 --update-kernel=DEFAULT \
# Line 271  grubTest grub.3 updargs/g3.7 --update-ke Line 386  grubTest grub.3 updargs/g3.7 --update-ke
386      --remove-args="hdd root ro"      --remove-args="hdd root ro"
387  grubTest grub.7 updargs/g7.2 --boot-filesystem=/    \  grubTest grub.7 updargs/g7.2 --boot-filesystem=/    \
388      --update-kernel=ALL --args "hde=ide-scsi"      --update-kernel=ALL --args "hde=ide-scsi"
 grubTest grub.7 updargs/g7.2 --boot-filesystem=/    \  
     --update-kernel=ALL --args "hde=ide-scsi"  
389  grubTest grub.7 updargs/g7.3 --boot-filesystem=/    \  grubTest grub.7 updargs/g7.3 --boot-filesystem=/    \
390      --update-kernel=DEFAULT --args "hde=ide-scsi"      --update-kernel=DEFAULT --args "hde=ide-scsi"
391  grubTest grub.7 updargs/g7.4 --boot-filesystem=/    \  grubTest grub.7 updargs/g7.4 --boot-filesystem=/    \
# Line 287  grubTest grub.11 updargs/g11.2 --boot-fi Line 400  grubTest grub.11 updargs/g11.2 --boot-fi
400      --update-kernel=/vmlinuz-2.4.7-2smp \      --update-kernel=/vmlinuz-2.4.7-2smp \
401      --args "ro root=LABEL=/ single"      --args "ro root=LABEL=/ single"
402    
403    testing="GRUB lba and root information on SuSE systems"
404    GRUBBY_SUSE_RELEASE=test/grub.12-support_files/etc/SuSE-release \
405        GRUBBY_SUSE_GRUB_CONF=test/grub.12-support_files/etc/grub.conf \
406        GRUBBY_GRUB_DEVICE_MAP=test/grub.12-support_files/boot/grub/device.map \
407        grubTest grub.12 info/g12.1 --info=0
408    
409  testing="LILO update kernel argument handling"  testing="LILO update kernel argument handling"
410  liloTest lilo.1 updargs/l1.1 --update-kernel=/boot/vmlinuz-2.4.18-4 \  liloTest lilo.1 updargs/l1.1 --update-kernel=/boot/vmlinuz-2.4.18-4 \
411      --args="root=/dev/md1"      --args="root=/dev/md1"
# Line 301  liloTest lilo.3 updargs/l3.1 --update-ke Line 420  liloTest lilo.3 updargs/l3.1 --update-ke
420  liloTest lilo.3 updargs/l3.2 --update-kernel=ALL \  liloTest lilo.3 updargs/l3.2 --update-kernel=ALL \
421      --remove-args="single" --args "root=/dev/hda2"      --remove-args="single" --args "root=/dev/hda2"
422    
423    testing="Extlinux update kernel argument handling"
424    extlinuxTest extlinux.1 updargs/extlinux1.1 --update-kernel=DEFAULT --args="root=/dev/hda1"
425    extlinuxTest extlinux.1 updargs/extlinux1.2 --update-kernel=DEFAULT \
426        --args="root=/dev/hda1 hda=ide-scsi root=/dev/hda2"
427    extlinuxTest extlinux.3 updargs/extlinux3.1 --update-kernel=DEFAULT --args "hdd=notide-scsi"
428    extlinuxTest extlinux.3 updargs/extlinux3.2 --update-kernel=DEFAULT \
429        --args "hdd=notide-scsi root=/dev/hdd1"
430    extlinuxTest extlinux.3 updargs/extlinux3.2 --update-kernel=DEFAULT \
431        --args "root=/dev/hdd1 hdd=notide-scsi"
432    extlinuxTest extlinux.3 updargs/extlinux3.4 --update-kernel=ALL --remove-args="hdd"
433    extlinuxTest extlinux.3 updargs/extlinux3.4 --update-kernel=ALL --remove-args="hdd=ide-scsi"
434    extlinuxTest extlinux.3 updargs/extlinux3.4 --update-kernel=ALL --remove-args="hdd=foobar"
435    extlinuxTest extlinux.3 updargs/extlinux3.7 --update-kernel=ALL \
436        --remove-args="hdd root ro"
437    extlinuxTest extlinux.4 updargs/extlinux4.2 --boot-filesystem=/    \
438        --update-kernel=ALL --args "hde=ide-scsi"
439    extlinuxTest extlinux.4 updargs/extlinux4.3 --boot-filesystem=/    \
440        --update-kernel=DEFAULT --args "hde=ide-scsi"
441    extlinuxTest extlinux.4 updargs/extlinux4.4 --boot-filesystem=/    \
442        --update-kernel=/vmlinuz-3.12.0-2.fc21.i686 \
443        --args "ro root=LABEL=/ console=tty0 console=ttyS1,9600n81 single"
444    extlinuxTest extlinux.4 updargs/extlinux4.5 --boot-filesystem=/    \
445        --update-kernel=ALL --args "root=/dev/hda2"
446    
447  testing="LILO add kernel"  testing="LILO add kernel"
448  liloTest lilo.4 add/l4.1 --add-kernel=/boot/new-kernel.img --title="title" \  liloTest lilo.4 add/l4.1 --add-kernel=/boot/new-kernel.img --title="title" \
449      --copy-default --boot-filesystem=/boot      --copy-default --boot-filesystem=/boot
# Line 342  grubTest grub.11 add/g11.1 --add-kernel= Line 485  grubTest grub.11 add/g11.1 --add-kernel=
485      --initrd=/boot/new-initrd --boot-filesystem=/boot --copy-default \      --initrd=/boot/new-initrd --boot-filesystem=/boot --copy-default \
486      --args='console=tty0 console=ttyS1,9600n81 single'      --args='console=tty0 console=ttyS1,9600n81 single'
487    
488  testing="GRUB2 add kernel"  testgrub2=n
489  grub2Test grub2.1 add/g2-1.1 --add-kernel=/boot/new-kernel.img --title='title' \  ARCH=$(uname -m | sed s,i[3456789]86,ia32,)
490      --initrd=/boot/new-initrd --boot-filesystem=/boot/ --copy-default  case $ARCH in
491  grub2Test grub2.1 add/g2-1.2 --add-kernel=/boot/new-kernel.img --title='title' \      aarch64|ppc|ppc64|ia32|x86_64) testgrub2=y ;;
492      --initrd=/boot/new-initrd --boot-filesystem=/boot/ \  esac
493      --copy-default --make-default  
494  grub2Test grub2.1 add/g2-1.3 --add-kernel=/boot/new-kernel.img --title='title' \  if [ "$testgrub2" == "y" ]; then
495      --boot-filesystem=/boot/ --copy-default --make-default      testing="GRUB2 add kernel"
496        grub2Test grub2.1 add/g2-1.1 --add-kernel=/boot/new-kernel.img \
497            --title='title' --initrd=/boot/new-initrd --boot-filesystem=/boot/ \
498            --copy-default
499        case $ARCH in
500            aarch64)
501                grub2Test grub2.1 add/g2-1.1 --add-kernel=/boot/new-kernel.img \
502                    --title='title' \
503                    --initrd=/boot/new-initrd --boot-filesystem=/boot/ \
504                    --copy-default --efi
505                ;;
506            *)
507                grub2Test grub2.1 add/g2-1.6 --add-kernel=/boot/new-kernel.img \
508                    --title='title' \
509                    --initrd=/boot/new-initrd --boot-filesystem=/boot/ \
510                    --copy-default --efi
511                ;;
512        esac
513        grub2Test grub2.6 add/g2-1.7 --add-kernel=/boot/new-kernel.img \
514            --title='title' --initrd=/boot/new-initrd --boot-filesystem=/boot/ \
515            --copy-default --efi
516        grub2Test grub2.1 add/g2-1.2 --add-kernel=/boot/new-kernel.img \
517            --title='title' --initrd=/boot/new-initrd --boot-filesystem=/boot/ \
518            --copy-default --make-default
519        grub2Test grub2.1 add/g2-1.3 --add-kernel=/boot/new-kernel.img \
520            --title='title' --boot-filesystem=/boot/ --copy-default --make-default
521        grub2Test grub2.1 remove/g2-1.4 \
522            --remove-kernel=/boot/vmlinuz-2.6.38.2-9.fc15.x86_64 \
523            --boot-filesystem=/boot/
524        grub2Test grub2.5 add/g2-1.5 --add-kernel=/boot/new-kernel.img \
525            --title='title' --initrd=/boot/new-initrd --boot-filesystem=/boot/ \
526            --copy-default
527        grub2Test grub2.12 add/g2-1.12 \
528            --add-kernel=/boot/vmlinuz-2.6.38.8-32.fc15.x86_64 \
529            --title='Linux, with Fedora 2.6.38.8-32.fc15.x86_64' \
530            --devtree='/boot/dtb-2.6.38.8-32.fc15.x86_64/foobarbaz.dtb' \
531            --initrd=/boot/initramfs-2.6.38.8-32.fc15.x86_64.img \
532            --boot-filesystem=/boot/ --copy-default --efi
533        grub2Test grub2.13 add/g2-1.13 \
534            --add-kernel=/boot/vmlinuz-2.6.38.8-32.fc15.x86_64 \
535            --title='Linux, with Fedora 2.6.38.8-32.fc15.x86_64' \
536            --devtree='/boot/dtb-2.6.38.8-32.fc15.x86_64/foobarbaz.dtb' \
537            --initrd=/boot/initramfs-2.6.38.8-32.fc15.x86_64.img \
538            --boot-filesystem=/boot/ --copy-default --efi
539        grub2Test grub2.15 add/g2-1.15 \
540            --add-kernel=/boot/vmlinuz-0-rescue-5a94251776a14678911d4ae0949500f5 \
541            --initrd /boot/initramfs-0-rescue-5a94251776a14678911d4ae0949500f5.img \
542            --copy-default --title "Fedora 21 Rescue" --args=root=/fooooo \
543            --remove-kernel=wtf --boot-filesystem=/boot/ --efi
544    
545        testing="GRUB2 add initrd"
546        grub2Test grub2.2 add/g2-1.4 --update-kernel=/boot/new-kernel.img \
547            --initrd=/boot/new-initrd --boot-filesystem=/boot/
548    
549        testing="GRUB2 display default index"
550        grub2DisplayTest grub2.1 defaultindex/0 --default-index
551        grub2DisplayTest grub2.2 defaultindex/0 --default-index
552    
553        testing="GRUB2 display default title"
554        grub2DisplayTest grub2.1 defaulttitle/g2.1 --default-title
555        grub2DisplayTest grub2.2 defaulttitle/g2.2 --default-title
556    
557        testing="GRUB2 display debug failure"
558        grub2DisplayTest grub2.1 debug/g2.1 --bad-image-bad \
559            --boot-filesystem=/boot --default-kernel --debug
560        testing="GRUB2 display debug success"
561        grub2DisplayTest grub2.1 debug/g2.1.2 --boot-filesystem=/boot \
562            --default-kernel --debug
563    
564        testing="GRUB2 remove kernel via index"
565        grub2Test grub2.3 remove/g2-1.1 --remove-kernel=1
566    
567        testing="GRUB2 remove kernel via title"
568        grub2Test grub2.3 remove/g2-1.1 --remove-kernel="TITLE=title2"
569    
570        testing="GRUB2 (submenu) remove kernel via index"
571        grub2Test grub2.4 remove/g2-1.2 --remove-kernel=2
572    
573        testing="GRUB2 (submenu) remove kernel via title"
574        grub2Test grub2.4 remove/g2-1.2 --remove-kernel="TITLE=title2"
575    
576        testing="GRUB2 default index directive"
577        grub2Test grub2.1 setdefaultindex/g2.1.0 --set-default-index=0
578        grub2Test grub2.1 setdefaultindex/g2.1.1 --set-default-index=1
579        grub2Test grub2.1 setdefaultindex/g2.1.9 --set-default-index=9
580    
581        testing="GRUB2 add kernel with default=saved_entry"
582        grub2Test grub2.7 add/g2-1.8 --env grubenv.1 \
583            --add-kernel=/boot/new-kernel.img \
584            --title='title' --initrd=/boot/new-initrd --boot-filesystem=/boot/ \
585            --copy-default
586        commandTest "saved_default output" \
587            "grub2-editenv test/grub2-support_files/env_temp list" \
588            "saved_entry=Linux, with Fedora 2.6.38.8-32.fc15.x86_64"
589    
590        testing="GRUB2 add kernel with default=saved_entry and a terrible title"
591        grub2Test grub2.7 add/g2-1.9 --env grubenv.1 \
592            --add-kernel=/boot/new-kernel.img \
593            --title='Fedora (3.10.3-300.fc19.x86_64) 19 (Schrödinger’s Cat)' \
594            --initrd=/boot/new-initrd --boot-filesystem=/boot/ \
595            --copy-default
596    
597        testing="GRUB2 set default with default=saved_entry and a terrible name"
598        grub2Test grub2.9 add/g2-1.9 --env grubenv.1 --set-default-index=0
599        commandTest "saved_default output" \
600            "grub2-editenv test/grub2-support_files/env_temp list" \
601            'saved_entry=Fedora (3.10.3-300.fc19.x86_64) 19 (Schrödinger’s Cat)'
602    
603        testing="GRUB2 set default with default=saved_entry"
604        grub2Test grub2.8 add/g2-1.8 --env grubenv.1 --set-default-index=0
605        commandTest "saved_default output" \
606            "grub2-editenv test/grub2-support_files/env_temp list" \
607            "saved_entry=title"
608    
609        testing="GRUB2 --default-index with default=saved_entry"
610        grub2DisplayTest grub2.8 defaultindex/1 --env grubenv.1 --default-index
611    
612        testing="GRUB2 --default-index with default=saved_entry"
613        grub2DisplayTest grub2.8 defaultindex/0 --env grubenv.2 --default-index
614    
615        testing="GRUB2 --default-title with default=saved_entry"
616        grub2DisplayTest grub2.8 defaulttitle/g2.1 --env grubenv.1 --default-title
617    
618        testing="GRUB2 --default-index with default=saved_entry and empty grubenv"
619        grub2DisplayTest grub2.8 defaultindex/0 --env grubenv.0 --default-index
620    
621        testlinux16=n
622        case $ARCH in
623            ia32|x86_64) testlinux16=y ;;
624        esac
625    
626  testing="GRUB2 add initrd"      if [ "$testlinux16" == "y" ]; then
627  grub2Test grub2.2 add/g2-1.4 --update-kernel=/boot/new-kernel.img \          testing="GRUB2 add kernel with linux16"
628      --initrd=/boot/new-initrd --boot-filesystem=/boot/          grub2Test grub2.10 add/g2-1.10 --add-kernel=/boot/new-kernel.img \
629                --title='title' --initrd=/boot/new-initrd --boot-filesystem=/boot/ \
630  testing="GRUB2 display default index"              --copy-default
631  grub2DisplayTest grub2.1 defaultindex/0 --default-index  
632  grub2DisplayTest grub2.2 defaultindex/0 --default-index          testing="GRUB2 add initrd with linux16"
633            grub2Test grub2.11 add/g2-1.11 --update-kernel=/boot/new-kernel.img \
634                --initrd=/boot/new-initrd --boot-filesystem=/boot/
635    
636            testing="GRUB2 add rescue with linux16"
637            grub2Test grub2.14 add/g2-1.14 \
638                --add-kernel=/boot/vmlinuz-0-rescue-5a94251776a14678911d4ae0949500f5 \
639                --initrd /boot/initramfs-0-rescue-5a94251776a14678911d4ae0949500f5.img \
640                --copy-default --title "Fedora 21 Rescue" --args=root=/fooooo \
641                --remove-kernel=wtf --boot-filesystem=/boot/
642        fi
643    fi
644    
645  testing="YABOOT add kernel"  testing="YABOOT add kernel"
646  yabootTest yaboot.1 add/y1.1 --copy-default --boot-filesystem=/ --add-kernel=/boot/new-kernel  \  yabootTest yaboot.1 add/y1.1 --copy-default --boot-filesystem=/ --add-kernel=/boot/new-kernel  \
# Line 371  testing="Z/IPL add kernel" Line 654  testing="Z/IPL add kernel"
654  ziplTest zipl.1 add/z1.1 --add-kernel=/boot/new-kernel.img --title test  ziplTest zipl.1 add/z1.1 --add-kernel=/boot/new-kernel.img --title test
655  ziplTest zipl.1 add/z1.2 --add-kernel=/boot/new-kernel.img --title test --copy-default  ziplTest zipl.1 add/z1.2 --add-kernel=/boot/new-kernel.img --title test --copy-default
656    
657    testing="Extlinux add kernel"
658    extlinuxTest extlinux.1 add/extlinux1.1 --add-kernel=/boot/new-kernel.img \
659        --title='title' --initrd=/boot/new-initrd --boot-filesystem=/
660    extlinuxTest extlinux.1 add/extlinux1.2 --add-kernel=/boot/new-kernel.img \
661        --title='title' --initrd=/boot/new-initrd --boot-filesystem=/boot
662    extlinuxTest extlinux.1 add/extlinux1.3 --add-kernel=/boot/new-kernel.img \
663        --title='title' --initrd=/boot/new-initrd --boot-filesystem=/ \
664        --copy-default
665    extlinuxTest extlinux.1 add/extlinux1.4 --add-kernel=/boot/new-kernel.img \
666        --title='title' --initrd=/boot/new-initrd --boot-filesystem=/boot \
667        --copy-default
668    extlinuxTest extlinux.2 add/extlinux2.1 \
669        --add-kernel=/boot/vmlinuz-3.12.0-2.fc21.i686 \
670        --initrd=/boot/initrd-3.12.0-2.fc21.i686-new.img \
671        --boot-filesystem=/boot --copy-default \
672        --title="Fedora (3.12.0-2.fc21.i686) 20 (Heisenbug)" \
673        --remove-kernel="TITLE=Fedora (3.12.0-2.fc21.i686) 20 (Heisenbug)"
674    extlinuxTest extlinux.5 add/extlinux5.1 \
675        --add-kernel=/boot/vmlinuz-3.15.0-0.rc1.git4.1.fc21.armv7hl \
676        --devtree='/boot/dtb-3.15.0-0.rc1.git4.1.fc21.armv7hl/imx6q-cubox-i.dtb' \
677        --initrd=/boot/initramfs-3.15.0-0.rc1.git4.1.fc21.armv7hl.img \
678        --boot-filesystem=/boot --copy-default \
679        --title="Fedora (3.15.0-0.rc1.git4.1.fc21.armv7hl) 21 (Rawhide)" \
680        --remove-kernel="TITLE=Fedora (3.12.0-0.fc21.armv7hl) 21 (Rawhide)"
681    extlinuxTest extlinux.6 add/extlinux6.1 \
682        --add-kernel=/boot/vmlinuz-3.15.0-0.rc1.git4.1.fc21.armv7hl \
683        --devtreedir='/boot/dtb-3.15.0-0.rc1.git4.1.fc21.armv7hl/' \
684        --initrd=/boot/initramfs-3.15.0-0.rc1.git4.1.fc21.armv7hl.img \
685        --boot-filesystem=/boot --copy-default \
686        --title="Fedora (3.15.0-0.rc1.git4.1.fc21.armv7hl) 21 (Rawhide)" \
687        --remove-kernel="TITLE=Fedora (3.12.0-0.fc21.armv7hl) 21 (Rawhide)"
688    
689  testing="LILO long titles"  testing="LILO long titles"
690  liloTest lilo.1 longtitle/l1.1 --add-kernel=/boot/new-kernel.img \  liloTest lilo.1 longtitle/l1.1 --add-kernel=/boot/new-kernel.img \
691      --title="linux-longtitle" --copy-default --boot-filesystem=/boot      --title="linux-longtitle" --copy-default --boot-filesystem=/boot

Legend:
Removed from v.1720  
changed lines
  Added in v.2992