f1d24f0e2c
* Monitor in e2e * Cleanup trap * Exposing monitor port * Cleanup script * Exposing monitor port * Test cases * Silent curl * Introduced monitor-e2e into CI * only monitor * machine executor * Readme * Echoing test cases * Revert "only monitor" bb6c8baf06029a1d6ea86cf62e8112ef78b8eaf4 * Negated commands in a subshell
64 lines
1.6 KiB
Bash
Executable File
64 lines
1.6 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
cd $(dirname $0)
|
|
set -e # exit when any command fails
|
|
|
|
|
|
##### Helper Functions #####
|
|
|
|
function cleanup {
|
|
../e2e-commons/down.sh
|
|
}
|
|
trap cleanup EXIT
|
|
|
|
FILES=(getBalances.json validators.json eventsStats.json alerts.json)
|
|
|
|
check_files_exist() {
|
|
rc=0
|
|
for f in "${FILES[@]}"; do
|
|
command="test -f responses/$f"
|
|
(docker-compose -f ../e2e-commons/docker-compose.yml exec monitor /bin/bash -c "$command") || rc=1
|
|
done
|
|
return $rc
|
|
}
|
|
|
|
|
|
##### Initialization #####
|
|
|
|
../e2e-commons/up.sh oracle deploy monitor
|
|
|
|
|
|
##### Test cases #####
|
|
|
|
echo "Test case - CheckWorker scripts should work and create files in responses/ directory"
|
|
(! check_files_exist)
|
|
docker-compose -f ../e2e-commons/docker-compose.yml exec monitor /bin/bash -c "node checkWorker.js"
|
|
docker-compose -f ../e2e-commons/docker-compose.yml exec monitor /bin/bash -c "node checkWorker2.js"
|
|
check_files_exist
|
|
|
|
echo "Test case - Web Interface should return balances"
|
|
OUTPUT=$(curl -s http://localhost:3003/)
|
|
grep -q home <<< "$OUTPUT"
|
|
grep -q foreign <<< "$OUTPUT"
|
|
(! grep -q error <<< "$OUTPUT")
|
|
|
|
echo "Test case - Web Interface should return validators"
|
|
OUTPUT=$(curl -s http://localhost:3003/validators)
|
|
grep -q home <<< "$OUTPUT"
|
|
grep -q foreign <<< "$OUTPUT"
|
|
(! grep -q error <<< "$OUTPUT")
|
|
|
|
echo "Test case - Web Interface should return eventsStats"
|
|
OUTPUT=$(curl -s http://localhost:3003/eventsStats)
|
|
grep -q lastChecked <<< "$OUTPUT"
|
|
(! grep -q error <<< "$OUTPUT")
|
|
|
|
echo "Test case - Web Interface should return alerts"
|
|
OUTPUT=$(curl -s http://localhost:3003/alerts)
|
|
grep -q lastChecked <<< "$OUTPUT"
|
|
(! grep -q error <<< "$OUTPUT")
|
|
|
|
|
|
##### Cleanup #####
|
|
|
|
cleanup
|