#!/bin/bash # Copyright 2011 George Danchev # Licensed under GNU GPL version 2 # set -e not_in_releng_exit() { printf "\nPlease execute the tests from releng directory.\n\n" exit 1 } # Include common bits . inc/releng_getopts.inc || not_in_releng_exit # Each releng_ test should decide whether or not it needs # a xorriso binary to test, since some do compilations only. if [ ! -x $RELENG_XORRISO ]; then print_help printf "\n${SELF}: -x absolute or relative path to binary to be run.\n\n" exit 31 fi # get_speeds() { echo -e "\n${SELF}: Running: ${RELENG_XORRISO} -outdev ${1} -list_speeds" ${RELENG_XORRISO} -outdev ${1} -list_speeds RET_SPEEDS="$?" case ${RET_SPEEDS} in 0) ;; *) boldify echo -e "\n${SELF}: ${RELENG_XORRISO} -outdev ${1} -list_speeds returned ${RET_SPEEDS}." unboldify ;; esac } get_devices() { echo -e "\n${SELF}: Running: $RELENG_XORRISO -devices 2>/dev/null | grep \"\-dev\"" DEVICES=`$RELENG_XORRISO -devices 2>/dev/null | grep "\-dev"` NUM_DEV=`echo ${DEVICES} | wc -l` case "${NUM_DEV}" in 0) echo -e "${SELF}: No drives found." exit 1 ;; 1) echo -e "${SELF}: Single drive found:\n${DEVICES}" OUTDEV=`${RELENG_XORRISO} -devices 2>/dev/null | perl -pe "s#^\d+\s+\-dev\s+\'## and s#\'.*##"` get_speeds ${OUTDEV} ;; *) echo -e "${SELF}: Multiple drives found. NOT FINISHED YET." exit 2 ;; esac } # main echo -e "\n${SELF}: Running: $RELENG_XORRISO -devices..." $RELENG_XORRISO -devices RET_DEVICES="$?" case ${RET_DEVICES} in 0) get_devices ;; *) boldify echo -ne "\n${SELF}: ${RELENG_XORRISO} -devices returned ${RET_DEVICES}." unboldify echo -e "\n${SELF}: Already mounted?" df -kh ;; esac exit 0