summaryrefslogtreecommitdiff
path: root/test/testrunner.sh
blob: 3099c65645eb0d10886a4c0289e6e9a4aaf78da2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#!/bin/sh

outline() {
echo >>${LOGFILE}
echo "-----------------------------------------------------------"  >>${LOGFILE}
echo >>${LOGFILE}
}

BUILDDIR=$1
TESTSRCDIR=$2

# locations
# test output
TESTOUTDIR=${BUILDDIR}/test
# test overall output
LOGFILE=${TESTOUTDIR}/testlog

# genbind tool
NSGENBIND=${BUILDDIR}/nsgenbind

#bindings
BINDINGDIR=${TESTSRCDIR}/data/bindings
BINDINGTESTS=$(ls ${BINDINGDIR}/*.bnd)

IDLDIR=${TESTSRCDIR}/data/idl

mkdir -p ${TESTOUTDIR}

echo "$*" >${LOGFILE}

for TEST in ${BINDINGTESTS};do

  outline

  TESTNAME=$(basename ${TEST} .bnd)
  TESTDIR=${TESTOUTDIR}/${TESTNAME}

  echo -n "    TEST: ${TESTNAME}......"
  echo "    TEST: ${TESTNAME}......" >>${LOGFILE}

  mkdir -p ${TESTDIR}
  # per test results
  RESFILE=${TESTDIR}/testres
  # per test errors
  ERRFILE=${TESTDIR}/testerr

  echo  ${NSGENBIND} -v -D -g -I ${IDLDIR} ${TEST} ${TESTOUTDIR}/${TESTNAME} >>${LOGFILE} 2>&1

  ${NSGENBIND} -v -D -g -I ${IDLDIR} ${TEST} ${TESTOUTDIR}/${TESTNAME} >${RESFILE} 2>${ERRFILE}

  RESULT=$?

  echo >> ${LOGFILE}
  cat ${ERRFILE} >> ${LOGFILE}
  echo >> ${LOGFILE}
  cat ${RESFILE} >> ${LOGFILE}

  if [ ${RESULT} -eq 0 ]; then
    echo "PASS"
  else
    echo "FAIL"
  fi
  

done