#!/bin/sh
set -e

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

cat > "$TMPDIR/test.cpp" << 'EOF'
#include <vtzero/vector_tile.hpp>
#include <vtzero/builder.hpp>
#include <cassert>

int main() {
    vtzero::tile_builder tile;
    vtzero::layer_builder layer{tile, "test_layer"};

    {
        vtzero::point_feature_builder feature{layer};
        feature.set_id(1);
        feature.add_point(10, 20);
        feature.add_property("key", "value");
        feature.commit();
    }

    const std::string data = tile.serialize();
    assert(!data.empty());

    vtzero::vector_tile vt{data};
    assert(vt.count_layers() == 1);
    return 0;
}
EOF

g++ -std=c++14 -o "$TMPDIR/test" "$TMPDIR/test.cpp" -I/usr/include
"$TMPDIR/test"
echo "vtzero compile-and-run test passed"
