split test harness for reuse