|
|
1.1 ! root 1: #!/bin/sh ! 2: ! 3: if [ $# -lt 1 -o "$1" = "-h" -o "$1" = "--help" ]; then ! 4: echo "Usage: $0 <hatari> ..." ! 5: exit 1; ! 6: fi ! 7: ! 8: hatari=$1 ! 9: shift ! 10: if [ ! -x "$hatari" ]; then ! 11: echo "First parameter must point to valid hatari executable." ! 12: exit 1; ! 13: fi; ! 14: ! 15: basedir=$(dirname $0) ! 16: testdir=$(mktemp -d) ! 17: ! 18: remove_temp() { ! 19: rm -rf "$testdir" ! 20: } ! 21: trap remove_temp EXIT ! 22: ! 23: export SDL_VIDEODRIVER=dummy ! 24: export SDL_AUDIODRIVER=dummy ! 25: ! 26: HOME="$testdir" $hatari --log-level fatal --sound off --cpuclock 32 --tos none \ ! 27: --run-vbls 500 --bios-intercept on $* "$basedir/xbiostst.prg" \ ! 28: 2> "$testdir/out.txt" << EOF ! 29: c ! 30: c ! 31: EOF ! 32: exitstat=$? ! 33: if [ $exitstat -ne 0 ]; then ! 34: echo "Running hatari failed. Status=${exitstat}." ! 35: cat "$testdir/out.txt" ! 36: exit 1 ! 37: fi ! 38: ! 39: # Now check for expected strings: ! 40: ! 41: if ! grep -q "%101010.*#42.*2a" "$testdir/out.txt"; then ! 42: echo "Test FAILED, missing '#42':" ! 43: cat "$testdir/out.txt" ! 44: exit 1 ! 45: fi ! 46: ! 47: if ! grep -q "This is a Dbmsg test for a string with fixed size." \ ! 48: "$testdir/out.txt"; then ! 49: echo "Test FAILED, missing Dbmsg string with fixed size:" ! 50: cat "$testdir/out.txt" ! 51: exit 1 ! 52: fi ! 53: ! 54: if ! grep -q "This is a Dbmsg test for a NUL-terminated string." \ ! 55: "$testdir/out.txt"; then ! 56: echo "Test FAILED, missing NUL-terminated Dbmsg string:" ! 57: cat "$testdir/out.txt" ! 58: exit 1 ! 59: fi ! 60: ! 61: if ! grep -q "0x1234.*0xdeadc0de" "$testdir/out.txt"; then ! 62: echo "Test FAILED, missing Dbmsg code 0x1234:" ! 63: cat "$testdir/out.txt" ! 64: exit 1 ! 65: fi ! 66: ! 67: echo "Test PASSED." ! 68: exit 0
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.