# verify that database isn't created in --watch mode
! interimap --watch=60
xgrep -E "^DBI connect\(.*\) failed: unable to open database file at " <"$STDERR"

# now create database
interimap

# start a background process
interimap --watch=60 & pid=$!
cleanup() {
    # kill interimap process and its children
    pkill -P "$pid" -TERM || true
    kill -TERM "$pid" || true
    wait
}
trap cleanup EXIT INT TERM

sleep .05 # wait a short while so we have time to lock the database (ugly and racy...)
# verify that subsequent runs fail as we can't acquire the exclusive lock
! interimap

# line 177 is `$DBH->do("PRAGMA locking_mode = EXCLUSIVE");`
xgrep -Fx "DBD::SQLite::db do failed: database is locked at ./interimap line 177." <"$STDERR"

# vim: set filetype=sh :