1 |
siliconforks |
471 |
#!/bin/sh |
2 |
|
|
# javascript-huge.sh - test .js file with more than 65535 lines |
3 |
|
|
# Copyright (C) 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 DIR2 OUT ERR' 1 2 3 15 |
22 |
|
|
|
23 |
|
|
export PATH=.:..:$PATH |
24 |
|
|
|
25 |
|
|
rm -fr DIR DIR2 |
26 |
|
|
|
27 |
|
|
# huge JavaScript file |
28 |
|
|
mkdir -p DIR |
29 |
|
|
perl -e 'for (1 .. 65536) {print "x = $_\n";}' > DIR/big.js |
30 |
|
|
$VALGRIND jscoverage --no-highlight DIR DIR2 > OUT 2> ERR |
31 |
|
|
test ! -s OUT |
32 |
|
|
test ! -s ERR |
33 |
|
|
grep -q -F "_\$jscoverage['big.js'][65536] = 0;" DIR2/big.js |
34 |
|
|
grep -q -F "_\$jscoverage['big.js'][65536]++;" DIR2/big.js |
35 |
|
|
|
36 |
|
|
# rm -fr DIR DIR2 OUT ERR |