telegram-bot-bash/test/d-process_message-test.sh

72 lines
1.9 KiB
Bash
Raw Normal View History

#!/usr/bin/env bash
#===============================================================================
#
# FILE: d-process_message-test.sh
#
# USAGE: must run only from dev/all-tests.sh
#
# DESCRIPTION: test receiving messages
#
# LICENSE: WTFPLv2 http://www.wtfpl.net/txt/copying/
# AUTHOR: KayM (gnadelwartz), kay@rrr.de
#
2021-01-17 08:57:08 +00:00
#### $$VERSION$$ v1.30-0-g3266427
#===============================================================================
# include common functions and definitions
# shellcheck source=test/ALL-tests.inc.sh
source "./ALL-tests.inc.sh"
set -e
# source bashbot.sh functionw
cd "${TESTDIR}" || exit 1
# shellcheck source=./bashbot.sh
source "${TESTDIR}/bashbot.sh" source
# shellcheck source=./bashbot.sh
source "${TESTDIR}/commands.sh" source
2019-04-21 11:45:51 +00:00
# overwrite get_file for test
get_file() {
printf "%s\n" "$1"
2019-04-21 11:45:51 +00:00
}
2019-04-21 12:52:55 +00:00
# get telegram input from file
2020-06-29 09:13:25 +00:00
export UPDATE
declare -Ax UPD
2019-04-21 12:52:55 +00:00
2020-06-29 09:13:25 +00:00
# run process_message --------------
ARRAYS="USER CHAT REPLYTO FORWARD URLS CONTACT CAPTION LOCATION MESSAGE VENUE SERVICE NEWMEMBER LEFTMEMBER PINNED"
2020-06-29 09:13:25 +00:00
printf "Check process_message regular message...\n"
2020-06-29 09:13:25 +00:00
UPDATE="$(< "${INPUTFILE}")"
Json2Array 'UPD' <"${INPUTFILE}"
set -x
{ pre_process_message "0"; process_message "0"; set +x; } >>"${LOGFILE}" 2>&1;
USER[ID]="123456789"; CHAT[ID]="123456789"
# output processed input
2020-06-29 09:13:25 +00:00
# shellcheck disable=SC2086
print_array ${ARRAYS} >"${OUTPUTFILE}"
2020-06-10 16:07:12 +00:00
compare_sorted "${REFFILE}" "${OUTPUTFILE}" || exit 1
2020-06-29 09:13:25 +00:00
# run process_message ------------
printf "Check process_message service message...\n"
2020-06-29 09:13:25 +00:00
UPDATE="$(cat "${INPUTFILE2}")"
Json2Array 'UPD' <"${INPUTFILE2}"
set -x
{ pre_process_message "0"; process_message "0"; set +x; } >>"${LOGFILE}" 2>&1;
USER[ID]="123456789"; CHAT[ID]="123456789"
# output processed input
# shellcheck disable=SC2086
print_array ${ARRAYS} >"${OUTPUTFILE}"
compare_sorted "${REFFILE2}" "${OUTPUTFILE}" || exit 1
printf "%s\n" "${SUCCESS}"
2019-04-21 11:45:51 +00:00
cd "${DIRME}" || exit 1