forked from pabigot/pyxb
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathtest.sh
executable file
·70 lines (56 loc) · 2.17 KB
/
test.sh
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
67
68
69
70
#!/bin/sh
: ${PYXB_TEST_ROOT:=${PYXB_ROOT}/tests}
. ${PYXB_TEST_ROOT}/support.sh
rm -f *.wxs po?.py *.pyc
sh demo1.sh || fail building demo1
python demo1.py > demo1.out || fail running demo1
cat demo1.out
cmp demo1.out demo.expected || fail demo1 output check
sh demo2.sh || fail building demo2
python demo2.py > demo2.out || fail running demo2
cat demo2.out
cmp demo2.out demo.expected || fail demo2 output check
sh demo3a.sh || fail building demo3a
python demo3.py > demo3a.out || fail running demo3a
cat demo3a.out
cmp demo3a.out demo.expected || fail demo3a output check
sh demo3b.sh || fail building demo3b
python demo3.py > demo3b.out || fail running demo3 variant b
cat demo3b.out
cmp demo3b.out demo.expected || fail demo3b output check
sh demo3c1.sh || fail building demo3c1
sh demo3c2.sh || fail building demo3c2
python demo3.py > demo3c.out || fail running demo3c
cat demo3c.out
cmp demo3c.out demo.expected || fail demo3c output check
sh demo4.sh || fail building demo4
python demo4a.py > demo4a.out || fail running demo4a
cat demo4a.out
cmp demo4a.out demo4.expected || fail demo4a output check
# This one displays an error which we capture and verify
python demo4a1.py 2>demo4a1.err 1>demo4a1.out || true
test -s demo4a1.out && fail demo4a1 stdout check
# Do output comparison without checking line numbers in trace
cat demo4a1.err \
| sed -r \
-e "s@${PYXB_ROOT}@PYXB_ROOT@g" \
-e 's@line [0-9]+@line #@' \
> demo4a1.errc
cmp demo4a1.errc demo4a1.expected || fail demo4a1 error check
python demo4a2.py > demo4a2.out || fail running demo4a2
cat demo4a2.out
cmp demo4a2.out demo4.expected || fail demo4a2 output check
sh demo4b.sh || fail building demo4b
python demo4b.py > demo4b.out || fail running demo4b
cat demo4b.out
cmp demo4b.out demo4.expected || fail demo4b output check
# 4c disables validation on output, so comparison is not
# reliable.
for dc in 4c1 4c2 4c3 ; do
python demo${dc}.py | xmllint --format - > demo${dc}.out
cmp demo${dc}.out demo${dc}.expected || fail demo${dc} output check
done
python badcontent.py > badcontent.out || fail running badcontent
cat badcontent.out
cmp badcontent.out badcontent.expected || fail badcontent output check
passed