diff options
author | Pau Espin Pedrol <pespin@sysmocom.de> | 2023-04-18 17:31:02 +0200 |
---|---|---|
committer | Pau Espin Pedrol <pespin@sysmocom.de> | 2023-04-20 20:40:44 +0200 |
commit | 6efa3812482a432485a09a17a2c024b25370f1b4 (patch) | |
tree | 613c746f3618978e4c89af85e1b8048fb64be0cc /tests/ms | |
parent | 3ea467d10417ad0e6a21c1e1464c8933591e48e0 (diff) |
ms: Make ms_{attach,detach}_tbf expectancies more robust
* Make sure that the tbf being attached has already the MS assigned.
* Check no re-attaching of alredy attached TBF ever happens.
* Document and early skip case where a non-attached TBF detach is
attempted.
* Avoid recursive call mess to tbf_set_ms(tbf, NULL); during detach.
* MsTest needs to be modified since it uses fake TBF objects which use
different set of calls than the regular TBFs in osmo-pcu. Since the
ul_tbf object is reused, it needs to be assigned ul_tbf->ms again before
re-assigning it, as per what happens usually in tbf_set_ms() in
osmo-pcu.
Change-Id: Ia18fe2de1fb3bf72f530157e5f30de64f2b11e12
Diffstat (limited to 'tests/ms')
-rw-r--r-- | tests/ms/MsTest.cpp | 6 | ||||
-rw-r--r-- | tests/ms/MsTest.err | 4 |
2 files changed, 5 insertions, 5 deletions
diff --git a/tests/ms/MsTest.cpp b/tests/ms/MsTest.cpp index a8febd06..40e8381e 100644 --- a/tests/ms/MsTest.cpp +++ b/tests/ms/MsTest.cpp @@ -443,7 +443,7 @@ static void test_ms_storage() OSMO_ASSERT(ms != NULL); ul_tbf = alloc_ul_tbf(bts, ms); ms_attach_tbf(ms, ul_tbf); - ms_detach_tbf(ms, ul_tbf); + tbf_set_ms(ul_tbf, NULL); ms = bts_get_ms_by_tlli(bts, tlli + 0, GSM_RESERVED_TMSI); OSMO_ASSERT(ms == NULL); ms = bts_get_ms_by_tlli(bts, tlli + 1, GSM_RESERVED_TMSI); @@ -452,8 +452,8 @@ static void test_ms_storage() /* delete ms */ ms = bts_get_ms_by_tlli(bts, tlli + 1, GSM_RESERVED_TMSI); OSMO_ASSERT(ms != NULL); - ms_attach_tbf(ms, ul_tbf); - ms_detach_tbf(ms, ul_tbf); + tbf_set_ms(ul_tbf, ms); + tbf_set_ms(ul_tbf, NULL); ms = bts_get_ms_by_tlli(bts, tlli + 1, GSM_RESERVED_TMSI); OSMO_ASSERT(ms == NULL); diff --git a/tests/ms/MsTest.err b/tests/ms/MsTest.err index 3d271ae9..3f2f520f 100644 --- a/tests/ms/MsTest.err +++ b/tests/ms/MsTest.err @@ -63,10 +63,10 @@ MS(IMSI-001001987654321:TLLI-0xffeeddbb:TA-220:MSCLS-0-0): + ms_attach_ul_tbf: n MS(IMSI-001001987654321:TLLI-0xffeeddbb:TA-220:MSCLS-0-0:UL): - ms_attach_ul_tbf: now used by 0 (-) MS(IMSI-001001987654321:TLLI-0xffeeddbb:TA-220:MSCLS-0-0) Detaching TBF: TBF(UL:STATE-NEW:GPRS:IMSI-001001987654321:TLLI-0xffeeddbb) MS(IMSI-001001987654321:TLLI-0xffeeddbb:TA-220:MSCLS-0-0) Destroying MS object -MS(IMSI-001001987654322:TLLI-0xffeeddbc:TA-220:MSCLS-0-0) Attaching UL TBF: TBF(UL:STATE-NEW:GPRS) +MS(IMSI-001001987654322:TLLI-0xffeeddbc:TA-220:MSCLS-0-0) Attaching UL TBF: TBF(UL:STATE-NEW:GPRS:IMSI-001001987654322:TLLI-0xffeeddbc) MS(IMSI-001001987654322:TLLI-0xffeeddbc:TA-220:MSCLS-0-0): + ms_attach_ul_tbf: now used by 1 (ms_attach_ul_tbf) MS(IMSI-001001987654322:TLLI-0xffeeddbc:TA-220:MSCLS-0-0:UL): - ms_attach_ul_tbf: now used by 0 (-) -MS(IMSI-001001987654322:TLLI-0xffeeddbc:TA-220:MSCLS-0-0) Detaching TBF: TBF(UL:STATE-NEW:GPRS) +MS(IMSI-001001987654322:TLLI-0xffeeddbc:TA-220:MSCLS-0-0) Detaching TBF: TBF(UL:STATE-NEW:GPRS:IMSI-001001987654322:TLLI-0xffeeddbc) MS(IMSI-001001987654322:TLLI-0xffeeddbc:TA-220:MSCLS-0-0) Destroying MS object Creating MS object Modifying MS object, UL TLLI: 0xffffffff -> 0xffeeddbb, not yet confirmed |