#!/bin/sh
set -e

# for verbose make
V=1
export V

tmpdir=$(mktemp -d)
trap 'rm -rf "$tmpdir"' EXIT INT TERM HUP

sed_move_to_stderr() {
    sed  -e "/$1/w /dev/stderr" -e "/$1/d"
}


cp -r test "$tmpdir"
cd "$tmpdir"
sed -i "s/require('..')/require('nan')/g" test/binding.gyp
exec 5>&1
exec 3>&1
error_gyp=$( ( (node-gyp rebuild --directory test 2>&1 >&3 3>&- ; echo $? >&4)  | sed_move_to_stderr 'it worked if it ends' 2>&1 >&3 3>&- ) 4>&1 >&5)
exec 3>&-
exec 5>&-
test "X$error_gyp" = "X0"
exec 5>&1
exec 3>&1
error_tap=$( ( (tap -R xunit --gc test/js/*-test.js 2>&1 >&3 3>&- ; echo $? >&4)  | sed_move_to_stderr 'index:' 2>&1 >&3 3>&- ) 4>&1 >&5)
exec 3>&-
exec 5>&-
test "X$error_tap" = "X0"
