aboutsummaryrefslogtreecommitdiff
path: root/src/cz/crcs/ectester/scripts/ectester.sh
blob: 8040096c49cf08e19067c19adef364672ba7445d (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
44
45
46
47
48
#!/bin/bash

dangerous="0"

positional=()
while [[ $# -gt 0 ]]
do

key="$1"
case $key in
    --dangerous)
    dangerous=1
    shift
    ;;
    *)
    positional+=("$1")
    shift
    ;;
esac
done
set -- "${positional[@]}"

if [[ $# -lt 1 ]]; then
    echo "At least one argument expected:" >&2
    echo "    ./ectester.sh [--dangerous] CARD_NAME [ECTester args]" >&2
    exit 1
fi

card="$1"
shift

declare -a tests=("default" "test-vectors")
if [[ "$dangerous" == "1" ]]; then
    tests+=("invalid" "wrong" "composite")
fi

declare -a files=()
for i in $(seq 0 $((${#tests[@]} - 1))); do
    test="${tests[$i]}"
    java -jar ECTester.jar -t ${test} -a --format yaml -l ${card}.${test} $@
    files+=(${card}.$test)
done

if command -v tar 2>&1 >/dev/null; then
    tar -czvf ${card}.tar.gz ${files[*]}
elif command -v zip 2>&1 >/dev/null; then
    zip ${card}.zip ${files[*]}
fi