#!/bin/bash
# ideone boilerplate - we can't write files in the home directory;
# so create a temporary directory for our files instead
t=$(mktemp -d -t ideone.XXXXXXXXXXXX) || exit
trap 'rm -rf "$t"' ERR EXIT
cd "$t"
mkdir -p source lib
cat <<\:>source/main.bash
source lib/include.bash
echo "test_dir: $test_dir"
:
cat <<\:>lib/include.bash
get_bash_script_dir() {
dirname "$0"
}
test_dir="$(get_bash_script_dir)"
:
bash source/main.bash
IyEvYmluL2Jhc2gKCiMgaWRlb25lIGJvaWxlcnBsYXRlIC0gd2UgY2FuJ3Qgd3JpdGUgZmlsZXMgaW4gdGhlIGhvbWUgZGlyZWN0b3J5OwojIHNvIGNyZWF0ZSBhIHRlbXBvcmFyeSBkaXJlY3RvcnkgZm9yIG91ciBmaWxlcyBpbnN0ZWFkCnQ9JChta3RlbXAgLWQgLXQgaWRlb25lLlhYWFhYWFhYWFhYWCkgfHwgZXhpdAp0cmFwICdybSAtcmYgIiR0IicgRVJSIEVYSVQKY2QgIiR0IgoKbWtkaXIgLXAgc291cmNlIGxpYgoKY2F0IDw8XDo+c291cmNlL21haW4uYmFzaApzb3VyY2UgbGliL2luY2x1ZGUuYmFzaAplY2hvICJ0ZXN0X2RpcjogJHRlc3RfZGlyIgo6CgpjYXQgPDxcOj5saWIvaW5jbHVkZS5iYXNoCmdldF9iYXNoX3NjcmlwdF9kaXIoKSB7CiAgICBkaXJuYW1lICIkMCIKfQoKdGVzdF9kaXI9IiQoZ2V0X2Jhc2hfc2NyaXB0X2RpcikiCjoKCmJhc2ggc291cmNlL21haW4uYmFzaA==