File: build_and_run_tests

package info (click to toggle)
chromium-browser 41.0.2272.118-1
  • links: PTS, VCS
  • area: main
  • in suites: jessie-kfreebsd
  • size: 2,189,132 kB
  • sloc: cpp: 9,691,462; ansic: 3,341,451; python: 712,689; asm: 518,779; xml: 208,926; java: 169,820; sh: 119,353; perl: 68,907; makefile: 28,311; yacc: 13,305; objc: 11,385; tcl: 3,186; cs: 2,225; sql: 2,217; lex: 2,215; lisp: 1,349; pascal: 1,256; awk: 407; ruby: 155; sed: 53; php: 14; exp: 11
file content (48 lines) | stat: -rwxr-xr-x 1,320 bytes parent folder | download | duplicates (3)
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
#!/bin/bash
# Copyright 2014 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
#
# Downloads and compiles necessary dependencies (closure compiler, junit) and
# builds and runs Java-specific JUnit tests.

readonly SCRIPT_DIR=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)
readonly TEMP_DIR=$(mktemp -d)

cleanup() {
  rm -rf "${TEMP_DIR}"
  rm -rf ${SCRIPT_DIR}/runner/*/com/google/javascript/jscomp/*.class
}

die_earlier() {
  cleanup
  exit 1
}

trap die_earlier SIGINT SIGHUP SIGTERM

cd "${TEMP_DIR}"
echo "Cloning Closure Compiler repo"
git clone https://github.com/google/closure-compiler.git || die_earlier

cd closure-compiler
echo "Building Closure Compiler"
ant all-classes-jar || die_earlier

readonly classpath=".:./runner/test:./runner/src:\
${TEMP_DIR}/closure-compiler/build/compiler.jar:\
${TEMP_DIR}/closure-compiler/build/classes:\
${TEMP_DIR}/closure-compiler/lib/junit.jar"

cd "${SCRIPT_DIR}"

echo "Compiling tests"
javac -classpath "${classpath}" \
    runner/test/com/google/javascript/jscomp/ChromePassTest.java || die_earlier

echo "Running tests"
java -classpath "${classpath}" org.junit.runner.JUnitCore \
    com.google.javascript.jscomp.ChromePassTest || die_earlier

echo "Cleaning up"
cleanup