vlm | e029711 | 2005-08-15 03:28:06 +0000 | [diff] [blame] | 1 | #!/bin/sh |
| 2 | |
| 3 | ORIG="./.check-xxber.orig.$$.tmp" |
| 4 | TEST="./.check-xxber.test.$$.tmp" |
| 5 | |
| 6 | # Test diff(1) capabilities |
| 7 | diff -a . . 2>/dev/null && diffArgs="-a" # Assume text files |
| 8 | diff -u . . 2>/dev/null && diffArgs="$diffArgs -u" # Unified diff output |
| 9 | |
| 10 | cat<<EOM > $ORIG |
| 11 | <I O="0" T="[UNIVERSAL 16]" TL="2" V="Indefinite" A="SEQUENCE"> |
| 12 | <P O="2" T="[UNIVERSAL 19]" TL="2" V="2" A="PrintableString">US</P> |
vlm | 1f13743 | 2005-08-15 07:21:22 +0000 | [diff] [blame] | 13 | <C O="6" T="[UNIVERSAL 16]" TL="2" V="22" A="SEQUENCE"> |
vlm | e029711 | 2005-08-15 03:28:06 +0000 | [diff] [blame] | 14 | <P O="8" T="[UNIVERSAL 2]" TL="2" V="4" A="INTEGER">1¦ G</P> |
vlm | 1f13743 | 2005-08-15 07:21:22 +0000 | [diff] [blame] | 15 | <C O="14" T="[UNIVERSAL 16]" TL="2" V="6" A="SEQUENCE"> |
| 16 | <P O="16" T="[UNIVERSAL 2]" TL="2" V="4" A="INTEGER">1¦ G</P> |
| 17 | </C O="22" T="[UNIVERSAL 16]" A="SEQUENCE" L="8"> |
| 18 | <C O="22" T="[UNIVERSAL 16]" TL="2" V="6" A="SEQUENCE"> |
| 19 | <P O="24" T="[UNIVERSAL 2]" TL="2" V="4" A="INTEGER">1¦ G</P> |
| 20 | </C O="30" T="[UNIVERSAL 16]" A="SEQUENCE" L="8"> |
| 21 | </C O="30" T="[UNIVERSAL 16]" A="SEQUENCE" L="24"> |
vlm | a4ee0b5 | 2005-11-28 19:12:38 +0000 | [diff] [blame] | 22 | <I O="30" T="[UNIVERSAL 16]" TL="2" V="Indefinite" A="SEQUENCE"> |
| 23 | </I O="32" T="[UNIVERSAL 0]" TL="2" L="4"> |
vlm | e029711 | 2005-08-15 03:28:06 +0000 | [diff] [blame] | 24 | EOM |
| 25 | |
vlm | 432aa12 | 2005-08-15 06:34:04 +0000 | [diff] [blame] | 26 | ./enber $ORIG | ./unber -p -i 0 - > $TEST 2>&1 |
vlm | e029711 | 2005-08-15 03:28:06 +0000 | [diff] [blame] | 27 | diff $diffArgs $ORIG $TEST >/dev/null 2>&1 |
| 28 | diffExitCode=$? |
| 29 | |
vlm | c2fd457 | 2005-08-15 03:30:15 +0000 | [diff] [blame] | 30 | if [ "$diffExitCode" = "0" ]; then |
vlm | e029711 | 2005-08-15 03:28:06 +0000 | [diff] [blame] | 31 | echo "FAILED: $0: expected failure, got success" |
| 32 | exit 42; |
| 33 | fi |
| 34 | |
| 35 | # Append necessary terminator |
vlm | a4ee0b5 | 2005-11-28 19:12:38 +0000 | [diff] [blame] | 36 | echo '</I O="34" T="[UNIVERSAL 0]" TL="2" L="36">' >> $ORIG |
vlm | e029711 | 2005-08-15 03:28:06 +0000 | [diff] [blame] | 37 | |
| 38 | # Try trancoding again |
vlm | 432aa12 | 2005-08-15 06:34:04 +0000 | [diff] [blame] | 39 | ./enber $ORIG | ./unber -p -i 0 - > $TEST 2>&1 |
vlm | e029711 | 2005-08-15 03:28:06 +0000 | [diff] [blame] | 40 | |
| 41 | diff $diffArgs $ORIG $TEST |
| 42 | diffExitCode=$? |
| 43 | |
| 44 | rm -f $ORIG $TEST |
| 45 | |
| 46 | exit $diffExitCode |