# !/usr/bin/env bash

##
# NOTE: This test is designed to run in bazel!
##

set -euox pipefail

COMMAND_TO_TEST="vehicle/puffin/src/resources/scripts/pps_watch.sh"


setup_test(){
    mkdir driving --parents
    source ./vehicle/puffin/src/resources/scripts/mocks.sh
}

test_successful_script() {
    mock_zcore_safe_successful
    timeout(){
        echo mock timeout $@; return 0;
    }

    output="$(HOME="." source ${COMMAND_TO_TEST})"
    expected="mock zcore exiting successfully
mock timeout 15 remote_command sudo ppswatch /dev/pps0"

    echo "output:${output}"
    if [ "${output}" == "${expected}" ]; then
        echo " Script correctly exited normal execution."
    else
        echo " Script failed execution."
        exit 1
    fi
}

setup_test
test_successful_script

