1 |
#!/bin/sh |
2 |
# javascript.sh - test various JavaScript constructs |
3 |
# Copyright (C) 2007, 2008, 2009 siliconforks.com |
4 |
# |
5 |
# This program is free software; you can redistribute it and/or modify |
6 |
# it under the terms of the GNU General Public License as published by |
7 |
# the Free Software Foundation; either version 2 of the License, or |
8 |
# (at your option) any later version. |
9 |
# |
10 |
# This program is distributed in the hope that it will be useful, |
11 |
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
12 |
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
13 |
# GNU General Public License for more details. |
14 |
# |
15 |
# You should have received a copy of the GNU General Public License along |
16 |
# with this program; if not, write to the Free Software Foundation, Inc., |
17 |
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
18 |
|
19 |
set -e |
20 |
|
21 |
trap 'rm -fr DIR' 1 2 3 15 |
22 |
|
23 |
export PATH=.:..:$PATH |
24 |
|
25 |
if jscoverage-server --version | grep -q 'iconv\|MultiByteToWideChar' |
26 |
then |
27 |
character_encoding_support=yes |
28 |
else |
29 |
character_encoding_support=no |
30 |
fi |
31 |
|
32 |
rm -fr DIR |
33 |
case "$character_encoding_support" in |
34 |
yes) |
35 |
$VALGRIND jscoverage --js-version 180 --encoding ISO-8859-1 javascript DIR |
36 |
;; |
37 |
*) |
38 |
$VALGRIND jscoverage --js-version=180 --exclude=javascript-iso-8859-1.js javascript DIR |
39 |
;; |
40 |
esac |
41 |
for i in javascript/*.js |
42 |
do |
43 |
if [ $character_encoding_support = no -a $i = javascript/javascript-iso-8859-1.js ] |
44 |
then |
45 |
continue |
46 |
fi |
47 |
FILE=${i##javascript/} |
48 |
EXPECTED=javascript.expected/${FILE} |
49 |
ACTUAL=DIR/${FILE} |
50 |
diff -u -r --strip-trailing-cr $EXPECTED $ACTUAL |
51 |
done |
52 |
|
53 |
# rm -fr DIR |