summaryrefslogtreecommitdiffstats
path: root/polygerrit-ui/app/template_test.sh
blob: 7177e8afbb396f1302d127176a70b672f776c622 (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
#!/bin/bash

set -ex

node_bin=$(which node)
if [ -z "$node_bin" ]; then
    echo "node must be on the path."
    exit 1
fi

npm_bin=$(which npm)
if [[ -z "$npm_bin" ]]; then
    echo "NPM must be on the path. (https://www.npmjs.com/)"
    exit 1
fi

fried_twinkie_config=$(npm list -g | grep -c fried-twinkie)
if [ -z "$npm_bin" ] || [ "$fried_twinkie_config" -eq "0" ]; then
    echo "You must install fried twinkie and its dependencies from NPM."
    echo "> npm install -g fried-twinkie"
    exit 1
fi

twinkie_version=$(npm list -g fried-twinkie@\>0.1 | grep fried-twinkie || :)
if [ -z "$twinkie_version" ]; then
    echo "Outdated version of fried-twinkie found. Bypassing template check."
    exit 0
fi

# Have to find where node_modules are installed and set the NODE_PATH

get_node_path() {
    cd $(dirname $node_bin)
    cd ../lib/node_modules
    pwd
}

export NODE_PATH=$(get_node_path)

unzip -o polygerrit-ui/polygerrit_components.bower_components.zip -d polygerrit-ui/app
python $TEST_SRCDIR/gerrit/polygerrit-ui/app/template_test_srcs/convert_for_template_tests.py
# Pass a file name argument from the --test_args (example: --test_arg=gr-list-view)
${node_bin} $TEST_SRCDIR/gerrit/polygerrit-ui/app/template_test_srcs/template_test.js $1 $2