mirror of
https://bitbucket.org/jsuto/piler.git
synced 2024-11-07 23:31:58 +01:00
Moved integration tests to tests dir
Signed-off-by: Janos SUTO <sj@acts.hu>
This commit is contained in:
parent
0659564b32
commit
37ba4e29b1
69
tests/cases/05-smtp.inc
Normal file
69
tests/cases/05-smtp.inc
Normal file
@ -0,0 +1,69 @@
|
||||
|
||||
register_case "case1"
|
||||
|
||||
case1() {
|
||||
log $FUNCNAME "sending emails"
|
||||
|
||||
setup
|
||||
|
||||
"${SMTP_SOURCE_DIR}/smtp-source.py" -s $SMTP_HOST -r archive@cust1.acts.hu -p 25 -t 20 --dir "$EML_DIR/Inbox" --socket --no-counter
|
||||
"${SMTP_SOURCE_DIR}/smtp-source.py" -s $SMTP_HOST -r archive@cust1.acts.hu -p 25 -t 20 --dir "$EML_DIR/Inbox2" --socket --no-counter
|
||||
"${SMTP_SOURCE_DIR}/smtp-source.py" -s $SMTP_HOST -r archive@cust1.acts.hu -p 25 -t 20 --dir "$EML_DIR/Levelszemet" --socket --no-counter
|
||||
"${SMTP_SOURCE_DIR}/smtp-source.py" -s $SMTP_HOST -r archive@cust1.acts.hu -p 25 -t 20 --dir "$EML_DIR/Levelszemet2" --socket --no-counter
|
||||
"${SMTP_SOURCE_DIR}/smtp-source.py" -s $SMTP_HOST -r archive@cust1.acts.hu -p 25 -t 20 --dir "$EML_DIR/spam0" --socket --no-counter
|
||||
"${SMTP_SOURCE_DIR}/smtp-source.py" -s $SMTP_HOST -r archive@cust1.acts.hu -p 25 -t 20 --dir "$EML_DIR/spam1" --socket --no-counter
|
||||
"${SMTP_SOURCE_DIR}/smtp-source.py" -s $SMTP_HOST -r archive@cust1.acts.hu -p 25 -t 20 --dir "$EML_DIR/deduptest" --socket --no-counter
|
||||
"${SMTP_SOURCE_DIR}/smtp-source.py" -s $SMTP_HOST -r archive@cust1.acts.hu extra@addr.ess another@extra.addr -p 25 -t 20 --dir "$EML_DIR/virus" --socket --no-counter
|
||||
|
||||
|
||||
wait_until_emails_are_processed "piler1" 2995
|
||||
docker exec "piler1" su piler -c /usr/libexec/piler/indexer.delta.sh 2>/dev/null
|
||||
|
||||
count_status_values 2995 2887 108 0
|
||||
|
||||
test_retrieved_messages_are_the_same "piler1" "piler"
|
||||
|
||||
run_05_sphinx_tests
|
||||
}
|
||||
|
||||
|
||||
count_status_values() {
|
||||
local container="piler1"
|
||||
|
||||
log "$FUNCNAME"
|
||||
|
||||
received=$(print_file_in_container "$container" "$LOG_FILE" | grep -c 'received:') || true
|
||||
stored=$(print_file_in_container "$container" "$LOG_FILE" | grep -c status=stored) || true
|
||||
discarded=$(print_file_in_container "$container" "$LOG_FILE" | grep -c status=discarded) || true
|
||||
duplicate=$(print_file_in_container "$container" "$LOG_FILE" | grep -c status=duplicate) || true
|
||||
|
||||
[[ $received -eq $1 ]] || set_verdict $RESULT_CRITICAL
|
||||
[[ $stored -eq $2 ]] || set_verdict $RESULT_CRITICAL
|
||||
[[ $discarded -eq $3 ]] || set_verdict $RESULT_CRITICAL
|
||||
[[ $duplicate -eq $4 ]] || set_verdict $RESULT_CRITICAL
|
||||
}
|
||||
|
||||
|
||||
run_05_sphinx_tests() {
|
||||
local container="piler1"
|
||||
|
||||
log "$FUNCNAME"
|
||||
|
||||
append_queries
|
||||
|
||||
for i in $(seq 0 $((${#SEARCH_QUERIES[@]}-1)) )
|
||||
do
|
||||
hits=$( run_sphinx_query "$container" "${SEARCH_QUERIES[$i]}" )
|
||||
echo $hits ${SEARCH_HITS[$i]}
|
||||
done
|
||||
}
|
||||
|
||||
|
||||
append_queries() {
|
||||
append_query "select * from main1,dailydelta1,delta1 WHERE MATCH('@subject budaörsi dc felmérés')" 9
|
||||
append_query "select * from main1,dailydelta1,delta1 WHERE MATCH('@from gruppi.hu')" 4
|
||||
append_query "select * from main1,dailydelta1,delta1 WHERE attachments > 0 AND MATCH('@subject spam ')" 85
|
||||
append_query "select * from main1,dailydelta1,delta1 WHERE attachments > 0 AND MATCH('@subject spam @attachment_types image')" 15
|
||||
append_query "select * from main1,dailydelta1,delta1 WHERE MATCH('@(subject,body) New Task TSK002*')" 29
|
||||
append_query "select * from main1,dailydelta1,delta1 WHERE MATCH('@subject \"virtualfax daily summary\" | \"adsl hibajegy\"')" 11
|
||||
}
|
21
tests/cases/06-stress.inc
Normal file
21
tests/cases/06-stress.inc
Normal file
@ -0,0 +1,21 @@
|
||||
|
||||
register_case "stress"
|
||||
|
||||
stress() {
|
||||
log $FUNCNAME "sending 10k emails"
|
||||
|
||||
docker exec -i "piler1" cp /dev/null /var/log/syslog 2>/dev/null
|
||||
|
||||
"${SMTP_SOURCE_DIR}/smtp-source.py" -s $SMTP_HOST -r archive@cust1.acts.hu -p 25 -t 20 --count 10000 --no-counter
|
||||
|
||||
wait_until_emails_are_processed "piler1" 10000
|
||||
|
||||
log "running delta indexer"
|
||||
docker exec -i "piler1" su piler -c /usr/libexec/piler/indexer.delta.sh 2>/dev/null
|
||||
|
||||
log "running main indexer"
|
||||
docker exec -i "piler1" su piler -c /usr/libexec/piler/indexer.main.sh 2>/dev/null
|
||||
|
||||
log "running main index watcher"
|
||||
docker exec -i "piler1" su piler -c /usr/libexec/piler/watch_sphinx_main_index.sh 2>/dev/null
|
||||
}
|
8
tests/cases/07-dummy.inc
Normal file
8
tests/cases/07-dummy.inc
Normal file
@ -0,0 +1,8 @@
|
||||
|
||||
register_case "dummy"
|
||||
|
||||
dummy() {
|
||||
log $FUNCNAME
|
||||
|
||||
setup
|
||||
}
|
36
tests/setup.inc
Normal file
36
tests/setup.inc
Normal file
@ -0,0 +1,36 @@
|
||||
CONTAINERS=( "piler1" )
|
||||
|
||||
setup() {
|
||||
destroy_containers
|
||||
launch_containers
|
||||
create_rules "piler1"
|
||||
}
|
||||
|
||||
launch_containers() {
|
||||
docker run -d --net=piler --name piler1 -e PILER_HOST="cust1.acts.hu" -p 80:80 -p 25:25 "$docker_image" 2>/dev/null
|
||||
wait_for_sleep_cycle_in_container "piler1"
|
||||
|
||||
if [[ -v JENKINS_URL ]]; then
|
||||
docker cp "${HOME}/telegraf.conf" piler1:/etc/telegraf/telegraf.conf 2>/dev/null
|
||||
else
|
||||
docker cp "${topdir}/secrets/telegraf.conf" piler1:/etc/telegraf/telegraf.conf 2>/dev/null
|
||||
fi
|
||||
|
||||
docker exec "piler1" sed -i 's/HOSTNAME/piler1/g' /etc/telegraf/telegraf.conf
|
||||
docker exec "piler1" service telegraf start
|
||||
}
|
||||
|
||||
create_rules() {
|
||||
local container="$1"
|
||||
|
||||
echo 'echo "insert into domain (domain, mapped) values(\"fictive.com\",\"fictive.com\")"| mysql --defaults-file=/etc/piler/.my.cnf piler' | docker exec -i "$container" sh 2>/dev/null
|
||||
|
||||
echo 'echo "insert into archiving_rule (subject) values (\"Android táblagép\")"| mysql --defaults-file=/etc/piler/.my.cnf piler'|docker exec -i "$container" sh 2>/dev/null
|
||||
echo 'echo "insert into archiving_rule (\`from\`) values (\"@gmail.com\")"| mysql --defaults-file=/etc/piler/.my.cnf piler'|docker exec -i "$container" sh 2>/dev/null
|
||||
echo 'echo "insert into archiving_rule (\`from\`,attachment_type, _attachment_size, attachment_size) values (\"finderis.co.ua\", \"image\", \">\", 100000)"|mysql --defaults-file=/etc/piler/.my.cnf piler'|docker exec -i "$container" sh 2>/dev/null
|
||||
echo 'echo "insert into archiving_rule (\`to\`) values (\"undisclosed-recipients\")"|mysql --defaults-file=/etc/piler/.my.cnf piler'|docker exec -i "$container" sh 2>/dev/null
|
||||
|
||||
echo 'echo "update user set password=\"\$6\$GKL00T\$8jqoFOe3PyAbOCLwKB7JwndwC.IinHrZRkdoQDZUc8vybZ88sA2qomlz5JceNif8fFpkGzZ03ilvQa7tqQx0v1\""| mysql --defaults-file=/etc/piler/.my.cnf piler'|docker exec -i "$container" sh 2>/dev/null
|
||||
|
||||
docker exec "$container" /etc/init.d/rc.piler reload 2>/dev/null
|
||||
}
|
Loading…
Reference in New Issue
Block a user