#! /usr/bin/env bash

################################################################################

cmake_source_dir="@CMAKE_SOURCE_DIR@"
cmake_binary_dir="@CMAKE_BINARY_DIR@"

panic()
{
	echo "ERROR: $*"
	exit 1
}

run_command()
{
	echo "RUNNING: $*"
	"$@"
	local status=$?
	echo "EXIT STATUS: $status"
	return "$status"
}

source_dir="$cmake_source_dir"
build_dir="$cmake_binary_dir"
data_dir="$source_dir/data"
run_clang_tool="$source_dir/run_clang_tool"

################################################################################

program="$build_dir/frontend_action"

python -c 'print("*" * 80)'

run_command "$run_clang_tool" "$program" -p "$build_dir" \
  "$data_dir/hello.cpp" || \
  panic "unexpected tool failure"

python -c 'print("*" * 80)'

echo "The following command should fail."
run_command "$run_clang_tool" "$program" -p "$build_dir" \
  "$data_dir/invalid_1.cpp"
[ $? -eq 1 ] || panic "unexpected tool success"

python -c 'print("*" * 80)'
