#!/bin/bash -e function chrome_pids() { ps axuwww|grep $D|grep c[h]rome|awk '{print $2}' } cd $(dirname $0) export D=$(mktemp -d) CHROME_LOG_FILE="${D}/chrome_debug.log" touch $CHROME_LOG_FILE chrome \ --enable-logging=stderr \ --no-first-run \ --disable-web-security \ --user-data-dir=$D \ --vmodule="*media/*=3,*turn*=3" \ "file://${PWD}/turn-prober.html" > $CHROME_LOG_FILE 2>&1 & CHROME_PID=$! while ! grep -q DONE $CHROME_LOG_FILE && chrome_pids|grep -q .; do sleep 0.1 done # Suppress bash's Killed message for the chrome above. exec 3>&2 exec 2>/dev/null while [ ! -z "$(chrome_pids)" ]; do kill -9 $(chrome_pids) done exec 2>&3 exec 3>&- DONE=$(grep DONE $CHROME_LOG_FILE) EXIT_CODE=0 if grep -q "DONE: PASS" $CHROME_LOG_FILE; then echo "PASS" else cat $CHROME_LOG_FILE EXIT_CODE=1 fi rm -rf $D exit $EXIT_CODE