net-im/signal-cli: Add an interactive test target

This is the best kind of semi-automated testing we can have now for this
port.
This commit is contained in:
Mateusz Piotrowski 2021-10-22 16:02:34 +02:00
parent b556d5629c
commit eb8ddc4ec1

View File

@ -17,6 +17,7 @@ BUILD_DEPENDS= asciidoc>0:textproc/asciidoc
LIB_DEPENDS= libsignal_jni.so:net-im/libsignal-client \
libzkgroup.so:net-im/zkgroup
RUN_DEPENDS= libsignal-client>=0.9.0:net-im/libsignal-client
TEST_DEPENDS= qrencode:graphics/libqrencode
USES= gmake shebangfix
USE_GITHUB= yes
@ -36,6 +37,8 @@ SUB_LIST= JAVA_HOME="${JAVA_HOME}"
BUILD_WRKSRC= ${WRKSRC}/man
TEST_ENV= ${MAKE_ENV} XDG_DATA_HOME=${WORKDIR}/xdg-data-home
USERS= signal-cli
GROUPS= signal-cli
@ -74,4 +77,18 @@ post-install-DBUS-on:
${INSTALL_DATA} ${WRKSRC}/data/org.asamk.Signal.conf \
${STAGEDIR}${PREFIX}/etc/dbus-1/system.d
pre-test:
if [ "${_TEST_SIGNAL_CLI_USERNAME}" = "" ]; then \
@${ECHO_MSG} "_TEST_SIGNAL_CLI_USERNAME must be set to run tests"; \
${FALSE}; \
fi
do-test:
${SETENV} ${TEST_ENV} ${STAGEDIR}${DATADIR}/bin/signal-cli \
link --name "${PORTNAME} test $$(date)" | \
xargs -n 1 qrencode -t ANSI256
${SETENV} ${TEST_ENV} ${STAGEDIR}${DATADIR}/bin/signal-cli \
send --message "${PORTNAME} test $$(date)" \
"${_TEST_SIGNAL_CLI_USERNAME}"
.include <bsd.port.mk>