aboutsummaryrefslogtreecommitdiff
path: root/autotests
diff options
context:
space:
mode:
authorAlexey Rusakov <Kitsune-Ral@users.sf.net>2022-05-29 08:52:20 +0200
committerAlexey Rusakov <Kitsune-Ral@users.sf.net>2022-05-29 15:07:07 +0200
commitfc01bc08fafe82b254f7562b55209c872297fac6 (patch)
treeb26c48ff54d3bf27c0e24d97cdb58c599d6a320d /autotests
parent729ba7da174eacc88bf9bd4e2e80eeab3fc92716 (diff)
downloadlibquotient-fc01bc08fafe82b254f7562b55209c872297fac6.tar.gz
libquotient-fc01bc08fafe82b254f7562b55209c872297fac6.zip
Refresh and organise run-tests.sh/adjust-config.sh
run-tests.sh now uses the latest version of Synapse and has less repetitive code; adjust-config.sh moved to autotests/ (it had nothing specific to CI, after all), works with the newest Synapse (that has an additional enable_registration_without_verification safeguard) and no more depends on the config directory being called "data" but rather should be called from inside that directory (for the case when it is used separately from run-tests.sh and the config directory is not called "data").
Diffstat (limited to 'autotests')
-rw-r--r--autotests/adjust-config.sh55
-rwxr-xr-xautotests/run-tests.sh30
2 files changed, 69 insertions, 16 deletions
diff --git a/autotests/adjust-config.sh b/autotests/adjust-config.sh
new file mode 100644
index 00000000..a55ac670
--- /dev/null
+++ b/autotests/adjust-config.sh
@@ -0,0 +1,55 @@
+#!/bin/bash
+
+CMD=""
+
+$CMD perl -pi -w -e \
+ 's/rc_messages_per_second.*/rc_messages_per_second: 1000/g;' homeserver.yaml
+$CMD perl -pi -w -e \
+ 's/rc_message_burst_count.*/rc_message_burst_count: 10000/g;' homeserver.yaml
+
+(
+cat <<HEREDOC
+rc_message:
+ per_second: 10000
+ burst_count: 100000
+rc_registration:
+ per_second: 10000
+ burst_count: 30000
+rc_login:
+ address:
+ per_second: 10000
+ burst_count: 30000
+ account:
+ per_second: 10000
+ burst_count: 30000
+ failed_attempts:
+ per_second: 10000
+ burst_count: 30000
+rc_admin_redaction:
+ per_second: 1000
+ burst_count: 5000
+rc_joins:
+ local:
+ per_second: 10000
+ burst_count: 100000
+ remote:
+ per_second: 10000
+ burst_count: 100000
+HEREDOC
+) | $CMD tee -a data/homeserver.yaml
+
+$CMD perl -pi -w -e \
+ 's/^#enable_registration: false/enable_registration: true/g;' homeserver.yaml
+$CMD perl -pi -w -e \
+ 's/^#enable_registration_without_verification: .+/enable_registration_without_verification: true/g;' homeserver.yaml
+$CMD perl -pi -w -e \
+ 's/tls: false/tls: true/g;' homeserver.yaml
+$CMD perl -pi -w -e \
+ 's/#tls_certificate_path:/tls_certificate_path:/g;' homeserver.yaml
+$CMD perl -pi -w -e \
+ 's/#tls_private_key_path:/tls_private_key_path:/g;' homeserver.yaml
+
+$CMD openssl req -x509 -newkey rsa:4096 -keyout localhost.tls.key -out localhost.tls.crt -days 365 -subj '/CN=localhost' -nodes
+
+$CMD chmod 0777 localhost.tls.crt
+$CMD chmod 0777 localhost.tls.key
diff --git a/autotests/run-tests.sh b/autotests/run-tests.sh
index 0d58e460..a3ee2ade 100755
--- a/autotests/run-tests.sh
+++ b/autotests/run-tests.sh
@@ -1,34 +1,32 @@
mkdir -p data
chmod 0777 data
+
rm ~/.local/share/testolmaccount -rf
docker run -v `pwd`/data:/data --rm \
- -e SYNAPSE_SERVER_NAME=localhost -e SYNAPSE_REPORT_STATS=no matrixdotorg/synapse:v1.24.0 generate
-./.ci/adjust-config.sh
+ -e SYNAPSE_SERVER_NAME=localhost -e SYNAPSE_REPORT_STATS=no matrixdotorg/synapse:latest generate
+pushd data
+. ../autotests/adjust-config.sh
+popd
docker run -d \
--name synapse \
-p 1234:8008 \
-p 8448:8008 \
-p 8008:8008 \
- -v `pwd`/data:/data matrixdotorg/synapse:v1.24.0
+ -v `pwd`/data:/data matrixdotorg/synapse:latest
trap "rm -rf ./data/*; docker rm -f synapse 2>&1 >/dev/null; trap - EXIT" EXIT
echo Waiting for synapse to start...
until curl -s -f -k https://localhost:1234/_matrix/client/versions; do echo "Checking ..."; sleep 2; done
echo Register alice
-docker exec synapse /bin/sh -c 'register_new_matrix_user --admin -u alice1 -p secret -c /data/homeserver.yaml https://localhost:8008'
-docker exec synapse /bin/sh -c 'register_new_matrix_user --admin -u alice2 -p secret -c /data/homeserver.yaml https://localhost:8008'
-docker exec synapse /bin/sh -c 'register_new_matrix_user --admin -u alice3 -p secret -c /data/homeserver.yaml https://localhost:8008'
-docker exec synapse /bin/sh -c 'register_new_matrix_user --admin -u alice4 -p secret -c /data/homeserver.yaml https://localhost:8008'
-docker exec synapse /bin/sh -c 'register_new_matrix_user --admin -u alice5 -p secret -c /data/homeserver.yaml https://localhost:8008'
-docker exec synapse /bin/sh -c 'register_new_matrix_user --admin -u alice6 -p secret -c /data/homeserver.yaml https://localhost:8008'
-docker exec synapse /bin/sh -c 'register_new_matrix_user --admin -u alice7 -p secret -c /data/homeserver.yaml https://localhost:8008'
-docker exec synapse /bin/sh -c 'register_new_matrix_user --admin -u alice8 -p secret -c /data/homeserver.yaml https://localhost:8008'
-docker exec synapse /bin/sh -c 'register_new_matrix_user --admin -u alice9 -p secret -c /data/homeserver.yaml https://localhost:8008'
+for i in 1 2 3 4 5 6 7 8 9; do
+ docker exec synapse /bin/sh -c "register_new_matrix_user --admin -u alice$i -p secret -c /data/homeserver.yaml https://localhost:8008"
+done
echo Register bob
-docker exec synapse /bin/sh -c 'register_new_matrix_user --admin -u bob1 -p secret -c /data/homeserver.yaml https://localhost:8008'
-docker exec synapse /bin/sh -c 'register_new_matrix_user --admin -u bob2 -p secret -c /data/homeserver.yaml https://localhost:8008'
-docker exec synapse /bin/sh -c 'register_new_matrix_user --admin -u bob3 -p secret -c /data/homeserver.yaml https://localhost:8008'
+for i in 1 2 3; do
+ docker exec synapse /bin/sh -c "register_new_matrix_user --admin -u bob$i -p secret -c /data/homeserver.yaml https://localhost:8008"
+done
echo Register carl
-docker exec synapse /bin/sh -c 'register_new_matrix_user --admin -u carl -p secret -c /data/homeserver.yaml https://localhost:8008'
+docker exec synapse /bin/sh -c "register_new_matrix_user --admin -u carl -p secret -c /data/homeserver.yaml https://localhost:8008"
GTEST_COLOR=1 ctest --verbose "$@"
+