#!/bin/sh
set -e

if [ -z "$AUTOPKGTEST_TMP" ]; then
    AUTOPKGTEST_TMP=$(mktemp -d)
    trap 'rm -rf "$AUTOPKGTEST_TMP"' EXIT INT TERM
fi

cp "$(dirname "$0")/smoke.cpp" "$AUTOPKGTEST_TMP/"
cd "$AUTOPKGTEST_TMP"

cat > smoke.gfa <<GFA
H	VN:Z:1.1
S	1	A
S	2	C
S	3	G
L	1	+	2	+	0M
L	2	+	3	+	0M
P	path	1+,2+,3+	*
GFA

# Command line tools.
gfa2gbwt -c smoke
gbz_stats -g smoke.gbz | grep -q '^Nodes'

# Library: parse a GFA file, build a GBZ, serialize and load it again.
g++ -std=c++17 -O2 -Wall -Wextra -fopenmp -o smoke smoke.cpp \
    -lgbwtgraph -lgbwt -lhandlegraph -lsdsl -lzstd -lcrypto
ldd ./smoke | grep -q 'libgbwtgraph\.so'
./smoke
