10d6ade254773aa4798fed1b2f1639ea2b8bdeb89David Gibson# Common functions for shell testcases 20d6ade254773aa4798fed1b2f1639ea2b8bdeb89David Gibson 30d6ade254773aa4798fed1b2f1639ea2b8bdeb89David GibsonPASS () { 40d6ade254773aa4798fed1b2f1639ea2b8bdeb89David Gibson echo "PASS" 50d6ade254773aa4798fed1b2f1639ea2b8bdeb89David Gibson exit 0 60d6ade254773aa4798fed1b2f1639ea2b8bdeb89David Gibson} 70d6ade254773aa4798fed1b2f1639ea2b8bdeb89David Gibson 80d6ade254773aa4798fed1b2f1639ea2b8bdeb89David GibsonFAIL () { 90d6ade254773aa4798fed1b2f1639ea2b8bdeb89David Gibson echo "FAIL" "$@" 100d6ade254773aa4798fed1b2f1639ea2b8bdeb89David Gibson exit 2 110d6ade254773aa4798fed1b2f1639ea2b8bdeb89David Gibson} 120d6ade254773aa4798fed1b2f1639ea2b8bdeb89David Gibson 13c879a8a28b168b3b448ca8a107e3386eda6829c7David GibsonFAIL_IF_SIGNAL () { 14c879a8a28b168b3b448ca8a107e3386eda6829c7David Gibson ret="$1" 15c879a8a28b168b3b448ca8a107e3386eda6829c7David Gibson if [ "$ret" -gt 127 ]; then 16c879a8a28b168b3b448ca8a107e3386eda6829c7David Gibson signame=$(kill -l $((ret - 128))) 17c879a8a28b168b3b448ca8a107e3386eda6829c7David Gibson FAIL "Killed by SIG$signame" 18c879a8a28b168b3b448ca8a107e3386eda6829c7David Gibson fi 19c879a8a28b168b3b448ca8a107e3386eda6829c7David Gibson} 20c879a8a28b168b3b448ca8a107e3386eda6829c7David Gibson 210d6ade254773aa4798fed1b2f1639ea2b8bdeb89David GibsonDTC=../dtc 2268d057f20d7c3a93b441d2892c4749392bc83b45Simon GlassDTGET=../fdtget 231ede50c3559bbfca79fadcbfd8acb9388f4aac87Simon GlassDTPUT=../fdtput 2476a65b14d1bb10f300f518c11aed231575521c2eSimon GlassFDTDUMP=../fdtdump 250d6ade254773aa4798fed1b2f1639ea2b8bdeb89David Gibson 260d6ade254773aa4798fed1b2f1639ea2b8bdeb89David Gibsonverbose_run () { 270d6ade254773aa4798fed1b2f1639ea2b8bdeb89David Gibson if [ -z "$QUIET_TEST" ]; then 280d6ade254773aa4798fed1b2f1639ea2b8bdeb89David Gibson "$@" 290d6ade254773aa4798fed1b2f1639ea2b8bdeb89David Gibson else 300d6ade254773aa4798fed1b2f1639ea2b8bdeb89David Gibson "$@" > /dev/null 2> /dev/null 310d6ade254773aa4798fed1b2f1639ea2b8bdeb89David Gibson fi 320d6ade254773aa4798fed1b2f1639ea2b8bdeb89David Gibson} 335ba0086bfd0fa6ab25f7ce1870417301a26c104fDavid Gibson 3415b23d21a62b5a0295ee08b54d0842889ce94c92David Gibsonverbose_run_check () { 3515b23d21a62b5a0295ee08b54d0842889ce94c92David Gibson verbose_run "$@" 3615b23d21a62b5a0295ee08b54d0842889ce94c92David Gibson ret="$?" 3715b23d21a62b5a0295ee08b54d0842889ce94c92David Gibson FAIL_IF_SIGNAL $ret 3815b23d21a62b5a0295ee08b54d0842889ce94c92David Gibson if [ $ret != 0 ]; then 3915b23d21a62b5a0295ee08b54d0842889ce94c92David Gibson FAIL "Returned error code $ret" 4015b23d21a62b5a0295ee08b54d0842889ce94c92David Gibson fi 4115b23d21a62b5a0295ee08b54d0842889ce94c92David Gibson} 4215b23d21a62b5a0295ee08b54d0842889ce94c92David Gibson 435ba0086bfd0fa6ab25f7ce1870417301a26c104fDavid Gibsonverbose_run_log () { 445ba0086bfd0fa6ab25f7ce1870417301a26c104fDavid Gibson LOG="$1" 455ba0086bfd0fa6ab25f7ce1870417301a26c104fDavid Gibson shift 46fc6e6f8d916b0d52b59a1c2a66f280e7fb7a80f5David Gibson "$@" > "$LOG" 2>&1 475ba0086bfd0fa6ab25f7ce1870417301a26c104fDavid Gibson ret=$? 485ba0086bfd0fa6ab25f7ce1870417301a26c104fDavid Gibson if [ -z "$QUIET_TEST" ]; then 495ba0086bfd0fa6ab25f7ce1870417301a26c104fDavid Gibson cat "$LOG" >&2 505ba0086bfd0fa6ab25f7ce1870417301a26c104fDavid Gibson fi 515ba0086bfd0fa6ab25f7ce1870417301a26c104fDavid Gibson return $ret 525ba0086bfd0fa6ab25f7ce1870417301a26c104fDavid Gibson} 5315b23d21a62b5a0295ee08b54d0842889ce94c92David Gibson 5415b23d21a62b5a0295ee08b54d0842889ce94c92David Gibsonverbose_run_log_check () { 5515b23d21a62b5a0295ee08b54d0842889ce94c92David Gibson verbose_run_log "$@" 5615b23d21a62b5a0295ee08b54d0842889ce94c92David Gibson ret="$?" 5715b23d21a62b5a0295ee08b54d0842889ce94c92David Gibson FAIL_IF_SIGNAL $ret 5815b23d21a62b5a0295ee08b54d0842889ce94c92David Gibson if [ $ret != 0 ]; then 5915b23d21a62b5a0295ee08b54d0842889ce94c92David Gibson FAIL "Returned error code $ret" 6015b23d21a62b5a0295ee08b54d0842889ce94c92David Gibson fi 6115b23d21a62b5a0295ee08b54d0842889ce94c92David Gibson} 6215b23d21a62b5a0295ee08b54d0842889ce94c92David Gibson 63