diff options
author | Pau Espin Pedrol <pespin@sysmocom.de> | 2022-08-05 13:46:44 +0200 |
---|---|---|
committer | laforge <laforge@osmocom.org> | 2022-08-06 17:00:48 +0000 |
commit | 061f96d03827cce9080d57d6cd4b4be5cc4fa667 (patch) | |
tree | fa93714b7a88ed39313463e028d976a50c2ca263 /tests | |
parent | fdb8f81922322a0ead748ad9fd012b567fb651dd (diff) |
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
Diffstat (limited to 'tests')
-rw-r--r-- | tests/Makefile.am | 12 | ||||
-rw-r--r-- | tests/smscb/gsm0341_test.c | 10 | ||||
-rw-r--r-- | tests/smscb/gsm0341_test.ok | 1 | ||||
-rw-r--r-- | tests/testsuite.at | 6 |
4 files changed, 22 insertions, 7 deletions
diff --git a/tests/Makefile.am b/tests/Makefile.am index 7d626154..b5448c01 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -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 \ diff --git a/tests/smscb/gsm0341_test.c b/tests/smscb/gsm0341_test.c index d11336f1..966a00fd 100644 --- a/tests/smscb/gsm0341_test.c +++ b/tests/smscb/gsm0341_test.c @@ -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; } diff --git a/tests/smscb/gsm0341_test.ok b/tests/smscb/gsm0341_test.ok new file mode 100644 index 00000000..600797c3 --- /dev/null +++ b/tests/smscb/gsm0341_test.ok @@ -0,0 +1 @@ +0010111c0011cd309aad2fa7e9a146a3d168341a8d46a3d168341a8d46a3d168341a8d46a3d168341a8d46a3d168341a8d46a3d168341a8d46a3d168341a8d46a3d168341a8d46a3d168341a8d46a3d168341a8d46a3d100 diff --git a/tests/testsuite.at b/tests/testsuite.at index 44ae5390..cc0b8c33 100644 --- a/tests/testsuite.at +++ b/tests/testsuite.at @@ -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 |