mirror of
https://github.com/juspay/hyperswitch.git
synced 2025-10-29 09:07:09 +08:00
ci(ui_test): Refactor core of UI tests to use injected browser data (#2178)
Co-authored-by: Jagan <jaganelavarasan@gmail.com>
This commit is contained in:
42
.github/scripts/run_ui_tests.sh
vendored
42
.github/scripts/run_ui_tests.sh
vendored
@ -1,42 +0,0 @@
|
||||
#!/bin/bash
|
||||
sudo apt update
|
||||
apt install net-tools
|
||||
mkdir tests
|
||||
|
||||
COUNT=0
|
||||
#download connector ui tests
|
||||
while [ ! -f $HOME/target/test/connector_tests.json ]
|
||||
do
|
||||
if [ $COUNT -gt 10 ];
|
||||
then
|
||||
exit 1
|
||||
fi
|
||||
COUNT=$((COUNT+1))
|
||||
sleep 2
|
||||
wget $UI_TESTCASES_PATH && mv testcases $HOME/target/test/connector_tests.json
|
||||
done
|
||||
|
||||
firefox --version
|
||||
$GECKOWEBDRIVER/geckodriver > tests/geckodriver.log 2>&1 &
|
||||
|
||||
#start server and run ui tests
|
||||
cargo run &
|
||||
|
||||
COUNT=0
|
||||
#Wait for the server to start in port 8080
|
||||
while netstat -lnt | awk '$4 ~ /:8080$/ {exit 1}'; do
|
||||
#Wait for 15mins to start otherwise kill the task
|
||||
if [ $COUNT -gt 90 ];
|
||||
then
|
||||
exit 1
|
||||
else
|
||||
COUNT=$((COUNT+1))
|
||||
sleep 10
|
||||
fi
|
||||
done
|
||||
|
||||
IN="$INPUT"
|
||||
for i in $(echo $IN | tr "," "\n"); do
|
||||
cargo test --package test_utils --test connectors -- "${i}_ui::" --test-threads=1 >> tests/test_results.log 2>&1
|
||||
done
|
||||
cat tests/test_results.log
|
||||
44
.github/scripts/start_ui_test_server.sh
vendored
Executable file
44
.github/scripts/start_ui_test_server.sh
vendored
Executable file
@ -0,0 +1,44 @@
|
||||
#! /usr/bin/env bash
|
||||
|
||||
sudo apt-get update
|
||||
sudo apt-get install net-tools
|
||||
mkdir tests
|
||||
|
||||
COUNT=0
|
||||
# Download connector ui tests
|
||||
while [ ! -f $HOME/target/test/connector_tests.json ]
|
||||
do
|
||||
if [ $COUNT -gt 10 ];
|
||||
then
|
||||
exit 1
|
||||
fi
|
||||
COUNT=$((COUNT+1))
|
||||
sleep 2
|
||||
wget $UI_TESTCASES_PATH && mv testcases $HOME/target/test/connector_tests.json
|
||||
done
|
||||
|
||||
curl --retry 10 --retry-delay 2 "${UI_TESTCASES_PATH}" --output "${HOME}/target/test/connector_tests.json"
|
||||
|
||||
firefox --version
|
||||
rm -rf $HOME/.mozilla
|
||||
|
||||
sh ./scripts/decrypt_browser_data.sh "$BROWSER_DATA_PASSPHRASE"
|
||||
|
||||
$GECKOWEBDRIVER/geckodriver > tests/geckodriver.log 2>&1 &
|
||||
|
||||
# Start server and redirect logs to a file
|
||||
target/debug/router &
|
||||
|
||||
SERVER_PID=$!
|
||||
# Wait for the server to start in port 8080
|
||||
COUNT=0
|
||||
while ! nc -z localhost 8080; do
|
||||
if [ $COUNT -gt 12 ]; then # Wait for up to 2 minutes (12 * 10 seconds)
|
||||
echo "Server did not start within a reasonable time. Exiting."
|
||||
kill $SERVER_PID
|
||||
exit 1
|
||||
else
|
||||
COUNT=$((COUNT+1))
|
||||
sleep 10
|
||||
fi
|
||||
done
|
||||
Reference in New Issue
Block a user