#!/bin/sh
TESTSDIR=debian/tests
TMP=${AUTOPKGTEST_TMP:-.}
# Build an invalid firmware.
xxd -r > $TMP/invalid.rfw << EOF
00000000: 18f0 9fe5 0000 a0e1 0000 a0e1 0000 a0e1
00000010: 0000 a0e1 0000 a0e3
0003fff0: ffff ffff ffff ffff ffff ffff ffff ffff
EOF
# This will try to validate firmware format.
fwflash $TMP/invalid.rfw > $TMP/invalid-firmware.output 2>&1
EXIT_CODE=$?
echo "Exit code: $EXIT_CODE"
cat $TMP/invalid-firmware.output

EXIT_CODE_EXPECTED=1

if [ $EXIT_CODE -ne $EXIT_CODE_EXPECTED ]; then
	echo "Exit code should be $EXIT_CODE_EXPECTED" >&2
	exit 1
fi

if ! diff -u $TESTSDIR/invalid-firmware.output-expected $TMP/invalid-firmware.output; then
	echo "Output mismatch" >&2
	exit 1
fi

echo Success
exit 0
