diff options
Diffstat (limited to 'release/src/router/busybox/testsuite/parse.tests')
-rwxr-xr-x | release/src/router/busybox/testsuite/parse.tests | 109 |
1 files changed, 109 insertions, 0 deletions
diff --git a/release/src/router/busybox/testsuite/parse.tests b/release/src/router/busybox/testsuite/parse.tests new file mode 100755 index 00000000..f1ee7b83 --- /dev/null +++ b/release/src/router/busybox/testsuite/parse.tests @@ -0,0 +1,109 @@ +#!/bin/sh + +# Copyright 2008 by Denys Vlasenko <vda.linux@googlemail.com> +# Licensed under GPL v2, see file LICENSE for details. + +. testing.sh + +COLLAPSE=$(( 0x00010000)) +TRIM=$(( 0x00020000)) +GREEDY=$(( 0x00040000)) +MIN_DIE=$(( 0x00100000)) +KEEP_COPY=$((0x00200000)) +ESCAPE=$(( 0x00400000)) +NORMAL=$(( COLLAPSE | TRIM | GREEDY)) + +# testing "description" "command" "result" "infile" "stdin" + +testing "parse mdev.conf" \ + "parse -n 4 -m 3 -f $((NORMAL)) -" \ + "[sda][0:0][644][@echo @echo TEST]\n" \ + "-" \ + " sda 0:0 644 @echo @echo TEST # echo trap\n" + +testing "parse notrim" \ + "parse -n 4 -m 3 -f $((NORMAL - TRIM - COLLAPSE)) -" \ + "[][sda][0:0][644 @echo @echo TEST ]\n" \ + "-" \ + " sda 0:0 644 @echo @echo TEST \n" + +FILE=__parse +cat >$FILE <<EOF +# +# Device Point System Options +#_______________________________________________________________ +/dev/hdb3 / ext2 defaults 1 0 + /dev/hdb1 /dosc hpfs ro 1 0 + /dev/fd0 /dosa vfat rw,user,noauto,nohide 0 0 + /dev/fd1 /dosb vfat rw,user,noauto,nohide 0 0 +# + /dev/cdrom /cdrom iso9660 ro,user,noauto,nohide 0 0 +/dev/hdb5 /redhat ext2 rw,root,noauto,nohide 0 0 #sssd + /dev/hdb6 /win2home ntfs rw,root,noauto,nohide 0 0# ssdsd +/dev/hdb7 /win2skul ntfs rw,root,noauto,nohide none 0 0 +none /dev/pts devpts gid=5,mode=620 0 0 + none /proc proc defaults 0 0 +EOF + +cat >$FILE.res <<EOF +[/dev/hdb3][/][ext2][defaults][1][0] +[/dev/hdb1][/dosc][hpfs][ro][1][0] +[/dev/fd0][/dosa][vfat][rw,user,noauto,nohide][0][0] +[/dev/fd1][/dosb][vfat][rw,user,noauto,nohide][0][0] +[/dev/cdrom][/cdrom][iso9660][ro,user,noauto,nohide][0][0] +[/dev/hdb5][/redhat][ext2][rw,root,noauto,nohide][0][0] +[/dev/hdb6][/win2home][ntfs][rw,root,noauto,nohide][0][0] +[/dev/hdb7][/win2skul][ntfs][rw,root,noauto,nohide][none][0 0] +[none][/dev/pts][devpts][gid=5,mode=620][0][0] +[none][/proc][proc][defaults][0][0] +EOF + +testing "parse polluted fstab" \ + "parse -n 6 -m 6 $FILE" \ + "`cat $FILE.res`\n" \ + "" \ + "" +cp ../examples/inittab $FILE +cat >$FILE.res <<EOF +[][][sysinit][/etc/init.d/rcS] +[][][askfirst][-/bin/sh] +[tty2][][askfirst][-/bin/sh] +[tty3][][askfirst][-/bin/sh] +[tty4][][askfirst][-/bin/sh] +[tty4][][respawn][/sbin/getty 38400 tty5] +[tty5][][respawn][/sbin/getty 38400 tty6] +[][][restart][/sbin/init] +[][][ctrlaltdel][/sbin/reboot] +[][][shutdown][/bin/umount -a -r] +[][][shutdown][/sbin/swapoff -a] +EOF + +testing "parse inittab from examples" \ + "parse -n 4 -m 4 -f $((NORMAL - TRIM - COLLAPSE)) -d'#:' $FILE" \ + "`cat $FILE.res`\n" \ + "" \ + "" + +cp ../examples/udhcp/udhcpd.conf $FILE +cat >$FILE.res <<EOF +[start][192.168.0.20] +[end][192.168.0.254] +[interface][eth0] +[opt][dns][192.168.10.2][192.168.10.10] +[option][subnet][255.255.255.0] +[opt][router][192.168.10.2] +[opt][wins][192.168.10.10] +[option][dns][129.219.13.81] +[option][domain][local] +[option][lease][864000] +EOF + +testing "parse udhcpd.conf from examples" \ + "parse -n 127 $FILE" \ + "`cat $FILE.res`\n" \ + "" \ + "" + +rm -f $FILE $FILE.res + +exit $FAILCOUNT |