#!/bin/sh set -e announce() { count=$(echo "$1" | wc -c) python3 -c " import math s = '$1' c = 80 print() print('#'*c) print('#' + ' '*math.floor((c - len(s))/2-1) + s + ' '*math.ceil((c - len(s))/2-1) + '#') print('#'*c) print() " } checkleaks() { valgrind --leak-check=full ./printdoc 2>&1 | tee /tmp/testlog if [ -z "$(grep "no leaks are possible" /tmp/testlog)" ]; then echo "Valgrind exited with errors!" exit 1 fi } announce "Trying ASCII STL" ( echo "submit" cat tests/sample-ascii.stl | wc -c cat tests/sample-ascii.stl ) | checkleaks announce "Trying BIN STL" ( echo "submit" cat tests/sample-binary.stl | wc -c cat tests/sample-binary.stl ) | checkleaks