Browse Source

dtc: Testcases for input handling

This patch adds some testcases checking corner cases of dtc's input
file handling.  Specifically it checks that dtc works correctly when
given input via stdin, and it checks that dtc fails gracefully if
given a nonexistent input file (or directory, in the case of -Ifs
mode).

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
main
David Gibson 17 years ago committed by Jon Loeliger
parent
commit
6c2e4d61f8
  1. 14
      tests/dtc-fatal.sh
  2. 11
      tests/run_tests.sh

14
tests/dtc-fatal.sh

@ -0,0 +1,14 @@ @@ -0,0 +1,14 @@
#! /bin/sh

. tests.sh

verbose_run $VALGRIND "$DTC" -o/dev/null "$@"
ret="$?"

if [ "$ret" -gt 127 ]; then
FAIL "dtc killed by signal (ret=$ret)"
elif [ "$ret" != "1" ]; then
FAIL "dtc returned incorrect status $ret instead of 1"
fi

PASS

11
tests/run_tests.sh

@ -238,6 +238,17 @@ dtc_tests () { @@ -238,6 +238,17 @@ dtc_tests () {
run_sh_test dtc-checkfails.sh node_name_chars -- -I dtb -O dtb bad_node_char.dtb
run_sh_test dtc-checkfails.sh node_name_format -- -I dtb -O dtb bad_node_format.dtb
run_sh_test dtc-checkfails.sh prop_name_chars -- -I dtb -O dtb bad_prop_char.dtb

# Check for proper behaviour reading from stdin
run_dtc_test -I dts -O dtb -o stdin_dtc_tree1.test.dtb - < test_tree1.dts
run_wrap_test cmp stdin_dtc_tree1.test.dtb dtc_tree1.test.dtb
run_dtc_test -I dtb -O dts -o stdin_odts_test_tree1.dtb.test.dts - < test_tree1.dtb
run_wrap_test cmp stdin_odts_test_tree1.dtb.test.dts odts_test_tree1.dtb.test.dts

# Check for graceful failure in some error conditions
run_sh_test dtc-fatal.sh -I dts -O dtb nosuchfile.dts
run_sh_test dtc-fatal.sh -I dtb -O dtb nosuchfile.dtb
run_sh_test dtc-fatal.sh -I fs -O dtb nosuchfile
}

while getopts "vt:m" ARG ; do

Loading…
Cancel
Save