tests: Run smscb/gsm0341_test during make check

Some initial testing for that module was writen to apparently do some
manual tests (rand()) but were never added to testsuite.at.
Let's make sure they run during make check (make the test deterministic
by removing rand()).

Change-Id: Icd4feced06afb749de994195c6b338df006749ad
This commit is contained in:
Pau Espin 2022-08-05 13:46:44 +02:00 committed by laforge
parent fdb8f81922
commit 061f96d038
4 changed files with 22 additions and 7 deletions

View File

@ -9,13 +9,13 @@ LDADD += $(top_builddir)/tests/libsercomstub.a
endif
check_PROGRAMS = timer/timer_test sms/sms_test ussd/ussd_test \
smscb/smscb_test bits/bitrev_test a5/a5_test \
bits/bitrev_test a5/a5_test \
conv/conv_test auth/milenage_test lapd/lapd_test \
gsm0808/gsm0808_test gsm0408/gsm0408_test \
gprs/gprs_test kasumi/kasumi_test gea/gea_test \
logging/logging_test codec/codec_test \
loggingrb/loggingrb_test strrb/strrb_test \
comp128/comp128_test smscb/gsm0341_test \
comp128/comp128_test \
bitvec/bitvec_test msgb/msgb_test bits/bitcomp_test \
bits/bitfield_test \
tlv/tlv_test gsup/gsup_test oap/oap_test \
@ -46,6 +46,8 @@ check_PROGRAMS = timer/timer_test sms/sms_test ussd/ussd_test \
gsm48/rest_octets_test \
base64/base64_test \
iuup/iuup_test \
smscb/smscb_test \
smscb/gsm0341_test \
$(NULL)
if ENABLE_MSGFILE
@ -352,7 +354,7 @@ $(srcdir)/package.m4: $(top_srcdir)/configure.ac
EXTRA_DIST = testsuite.at $(srcdir)/package.m4 $(TESTSUITE) \
timer/timer_test.ok sms/sms_test.ok ussd/ussd_test.ok \
smscb/smscb_test.ok bits/bitrev_test.ok a5/a5_test.ok \
bits/bitrev_test.ok a5/a5_test.ok \
conv/conv_test.ok auth/milenage_test.ok ctrl/ctrl_test.ok \
lapd/lapd_test.ok \
gsm0408/gsm0408_test.ok gsm0408/gsm0408_test.err \
@ -426,6 +428,8 @@ EXTRA_DIST = testsuite.at $(srcdir)/package.m4 $(TESTSUITE) \
gsm48/rest_octets_test.ok \
base64/base64_test.ok \
iuup/iuup_test.ok \
smscb/smscb_test.ok \
smscb/gsm0341_test.ok \
$(NULL)
if ENABLE_LIBSCTP
@ -480,6 +484,8 @@ endif
>$(srcdir)/sms/sms_test.ok
smscb/smscb_test \
>$(srcdir)/smscb/smscb_test.ok
smscb/gsm0341_test \
>$(srcdir)/smscb/gsm0341_test.ok
ussd/ussd_test \
>$(srcdir)/ussd/ussd_test.ok
auth/milenage_test \

View File

@ -25,7 +25,7 @@
#include <osmocom/core/utils.h>
#include <osmocom/core/msgb.h>
struct gsm341_ms_message *gen_msg_from_text(uint16_t msg_id, const char *text)
struct gsm341_ms_message *gen_msg_from_text(uint16_t msg_id, uint8_t msg_code, const char *text)
{
struct gsm341_ms_message *cbmsg;
int text_len = strlen(text);
@ -34,11 +34,11 @@ struct gsm341_ms_message *gen_msg_from_text(uint16_t msg_id, const char *text)
uint8_t payload[text_len];
int payload_octets;
srand(time(NULL));
//srand(time(NULL));
gsm_7bit_encode_n(payload, sizeof(payload), text, &payload_octets);
//cbmsg = gsm0341_build_msg(NULL, 0, rand(), 0, msg_id, 0x0f, 1, 1, payload, payload_octets);
cbmsg = gsm0341_build_msg(NULL, 0, rand(), 0, msg_id, 0x00, 1, 1, payload, payload_octets);
cbmsg = gsm0341_build_msg(NULL, 0, msg_code, 0, msg_id, 0x00, 1, 1, payload, payload_octets);
printf("%s\n", osmo_hexdump_nospc((uint8_t *)cbmsg, sizeof(*cbmsg)+payload_octets));
@ -50,6 +50,7 @@ int main(int argc, char **argv)
uint16_t msg_id = GSM341_MSGID_ETWS_CMAS_MONTHLY_TEST;
char *text = "Mahlzeit!";
char tbuf[GSM341_MAX_CHARS+1];
struct gsm341_ms_message *cbmsg;
if (argc > 1)
msg_id = atoi(argv[1]);
@ -63,7 +64,8 @@ int main(int argc, char **argv)
sizeof(tbuf)-strlen(text));
tbuf[GSM341_MAX_CHARS] = 0;
gen_msg_from_text(msg_id, tbuf);
cbmsg = gen_msg_from_text(msg_id, 1, tbuf);
talloc_free(cbmsg);
return EXIT_SUCCESS;
}

View File

@ -0,0 +1 @@
0010111c0011cd309aad2fa7e9a146a3d168341a8d46a3d168341a8d46a3d168341a8d46a3d168341a8d46a3d168341a8d46a3d168341a8d46a3d168341a8d46a3d168341a8d46a3d168341a8d46a3d168341a8d46a3d100

View File

@ -102,6 +102,12 @@ cat $abs_srcdir/smscb/smscb_test.ok > expout
AT_CHECK([$abs_top_builddir/tests/smscb/smscb_test], [0], [expout])
AT_CLEANUP
AT_SETUP([smscb_gsm0341])
AT_KEYWORDS([smscb_gsm0341])
cat $abs_srcdir/smscb/gsm0341_test.ok > expout
AT_CHECK([$abs_top_builddir/tests/smscb/gsm0341_test], [0], [expout])
AT_CLEANUP
AT_SETUP([ussd])
AT_KEYWORDS([ussd])
cat $abs_srcdir/ussd/ussd_test.ok > expout