#!/bin/sh

set -e

TMPDIR=$(mktemp -d)
trap "rm -rf $TMPDIR" EXIT
cd $TMPDIR

cat <<EOF > hello-world.cc
#include <iostream>
#include <cvc5/cvc5.h>

using namespace cvc5;

int main ()
{
    TermManager tm;
    Term helloworld = tm.mkConst(tm.getBooleanSort(), "Hello World!");
    std::cout << helloworld << " is " << Solver{tm}.checkSatAssuming(helloworld)
              << std::endl;
    return 0;
}
EOF

c++ -o hello-world hello-world.cc -lcvc5
[ -x hello-world ]

./hello-world > output
echo "|Hello World!| is sat" > expected
diff expected output
