Commit Graph

3270 Commits

Author SHA1 Message Date
Vadim Yanitskiy 46f199271e BTS_Tests: execute TC_dyn_osmo_pdch_{tchh,sdcch8}_race_act last
These test cases can potentially break the IUT or cause weird/unexpected
behavior.  Ensure that they are executed last, not affecting the others.

Change-Id: I167a9e6eb2e3fe1d9c73994c428d8419074d96c3
Fixes: I3b602ac9dbe0ab3e80eb30de573c9b48a79872d8
Related: OS#5245
2021-10-06 02:38:41 +06:00
Vadim Yanitskiy 64043d8bae BTS: reproduce a race condition described in OS#5245
Change-Id: I3b602ac9dbe0ab3e80eb30de573c9b48a79872d8
Depends: Idb1ef445bc14a6312f08a83ecacc3a938b0e1d70
Related: OS#5245
2021-10-04 12:37:23 +00:00
Vadim Yanitskiy 42525ac97b library/TRXC_Types: add definitions for FAKE_TRXC_DELAY
Change-Id: Ic5034f244374d4368d4fcb9a382c984cc730c408
Related: OS#5245
2021-10-04 12:37:23 +00:00
Vadim Yanitskiy 418066a05c f_TRXC_transceive(): accept 'template (value)' parameter
Change-Id: I98012607f3e9da71234333aac77d59936cd3ee20
Related: OS#5245
2021-10-04 12:37:23 +00:00
Neels Hofmeyr 34174bde0a bsc: verify TSC in inter-BSC ho (out) RR HO Cmd
Related: SYS#4895 OS#5244
Related: Iae20df4387c3d75752301bd5daeeea7508966393 (osmo-bsc)
Change-Id: Icabcedc59d80e812c3d6ba5d6db5e2bb9b319252
2021-10-02 15:01:35 +02:00
Neels Hofmeyr 6a955cc46d bsc: verify TSC in RR HO Cmd of TC_ho_neighbor_config_*
Related: SYS#4895 OS#5244
Related: Iae20df4387c3d75752301bd5daeeea7508966393 (osmo-bsc)
Change-Id: I09cb07561a57527880b87147495619a3bbbceb3f
2021-10-02 15:01:35 +02:00
Neels Hofmeyr c741fcb426 bsc: TC_ho_int: verify TSC in HandoverCommand
For intra-BSC handovers, also verify the correct Training Sequence Code
in the RR Handover Command (not only in the Channel Activation as added
in previous patch).

Related: SYS#4895 OS#5244
Related: Iae20df4387c3d75752301bd5daeeea7508966393 (osmo-bsc)
Change-Id: I32e3553581eb17812082f1f2ee96cc978e8db668
2021-10-02 15:01:22 +02:00
Neels Hofmeyr c2cf45481a bsc: TC_ho_int: verify TSC in Chan Act
OS#5244 reports an error in the Training Sequence Code used in the
Channel Activation for a handover target channel. Verify the TSC to
uncover this bug.

Related: SYS#4895, OS#5244
Related: Iae20df4387c3d75752301bd5daeeea7508966393 (osmo-bsc)
Change-Id: I1ed6f068c85b01e5a2d7b5f2651498a1521f89af
2021-10-02 13:11:22 +02:00
Neels Hofmeyr 596393abe5 RSLEM: add f_chan_act_verify_tsc()
Will need this code again to verify the TSC during handover, so cast
this in a separate function.

Related: SYS#4895
Change-Id: I7a3f68ed1deba6a4a0a1cc4df7613638225c1640
2021-10-02 13:10:58 +02:00
Neels Hofmeyr bf7202046d bsc: add const list of TSC expected per BTS
Reduce code (comment) dup by having one const definition for default
TSCs instead of magic numbers.

Will add another use of this in upcoming patch testing correct TSC in
handover.

Related: SYS#4895
Change-Id: I3733ebbbfd74630e095a08b83023974aad177b34
2021-10-02 13:10:58 +02:00
Neels Hofmeyr 92cfa1c45a bsc: add TC_lost_sdcch_during_assignment()
Reproduce a segfault happening when the SDCCH (primary) lchan is lost
in-between a TCH Channel Activ and its Channel Activ Ack.

Related: SYS#5627
Related: I3b1cd88bea62ef0032f6c035bac95d3df9fdca7a (osmo-bsc)
Change-Id: I81cccdea450885d5241cab62000ad355d464dd49
2021-09-29 16:02:01 +02:00
Neels Hofmeyr ad26fc0017 RSLEM: add f_rslem_auto_chan_act_ack(boolean)
Allow to switch off automatic Channel Activation ACK via a new port
signature.

Required for upcoming BSC_Tests.TC_lost_sdcch_during_assignment().

Related: SYS#5627
Change-Id: I9a9d191aa66ec27f4f80c2baa2c5aa3c7b668d66
2021-09-29 16:02:01 +02:00
Daniel Willmann c5bbcc6279 gbproxy: Check SGSN-orignated BVC RESET if BSS BVC is gone
IF the BSS-BVC is gone gbproxy blocks the BVC towards the SGSN (this is
the only thing it can do since there is no BVC-REMOVE). If the SGSN ever
decides to reset that BVC the gbproxy should not ACK it, but instead
consider the BVCI unknown.

Change-Id: Ic57b39a77adf71abda99ef8af7da1592e2225a0d
Related: SYS#5628, OS#5236
2021-09-27 12:10:17 +00:00
Neels Hofmeyr 40a45d143f bsc: fix TC_reassignment_fr for SCCPlite test suite
In SCCPlite, there is only one DLCX. Turns out the DLCX doesn't have to
be part of the interlave, just call f_expect_dlcx_conns() which takes
care of AoIP vs SCCPlite expectations.

Related: SYS#4895
Change-Id: Id8931185dfa9f229ca7af033a97cabd040db0c2a
2021-09-23 23:00:05 +02:00
Neels Hofmeyr 969abd0f8e bsc: fixup for TC_cm_reestablishment: properly del MGCP ep
Fix SCCPlite run of TC_cm_reestablishment.

I'm not sure why it works for AoIP before this patch, but now it works
for both SCCPlite and AoIP.

Related: SYS#5130
Change-Id: I1c87272c5bb1ac452927054a9eef104d795e02f8
2021-09-23 22:27:37 +02:00
Neels Hofmeyr f65ce87f97 bsc: do not run TC_stat_num_msc_* for SCCPlite
Avoid test breakage in ttcn3-bsc-test-sccplite, due to different
osmo-bsc configuration.

Related: SYS#5542
Change-Id: Iaf976ac12dbb2ee1930a7acfcf3cb452db34beed
2021-09-23 18:41:13 +02:00
Pau Espin cf2ada57cc pcu: Allow empty rlcmac blocks in data_req
They are used by osmo-pcu to signal idle blocks.

Change-Id: Ied6b133be5bfd181f08c445b76af0f570edfd2a4
2021-09-22 14:36:35 +02:00
Oliver Smith f04762d48d pcu: add TC_stat_pdch_avail_occ_ms_not_known_*
Add two new tests to verify occupied and available PDCH stats if MS is
not known by the PCU.

Related: SYS#4878
Change-Id: Id21d4056a21b73ff612956700d2056d838eb54f8
2021-09-17 16:59:32 +02:00
Oliver Smith 4b2a89f308 pcu: TC_stat_pdch_avail_occ: test gprs/egprs stats
Extend the test to verify that TTCN3.bts.0.pdch.occupied.gprs and
TTCN3.bts.0.pdch.occupied.egprs work as expected. These new stats are
needed for performance measurements in 3GPP TS 52.402 § B.2.1.54-55.

Related: SYS#4878
Depends: osmo-pcu I0c0a1121b4ae5f031782e7e63a0c28eb0b6c8b42
Change-Id: Ia98de17187810acb2e1b327c37beab79a0c211b8
2021-09-17 08:03:03 +00:00
Oliver Smith edcded2d81 pcu: TC_stat_pdch_avail_occ: enable 4 TRX
Enable multiple TRX to verify that counters work as expected if the
allocator spreads TBFs over multiple TRX.

Related: SYS#4878
Change-Id: Ibde5be120e893fcecceb72a888483d5a6bb8ce50
2021-09-17 08:03:03 +00:00
Pau Espin f28fd080fc pcu: Support Neighbor Address Resolution over PCUIF
New versions of osmo-pcu support Neighbor Address Resolution over this
interface, and deprecated the old CTRL interface.
Let's use it by default while still keeping support for the old one for
a while to avoid breakage of existing deployments.

Tests run to validate:
* Old osmo-pcu still passes tests using CTRL interface
* New osmo-pcu (with new iface support) still passes tests using CTRL
  interface
* New osmo-pcu (with new iface support) passes tests using new iface

Related: SYS#4971
Change-Id: I05f1aabc64fc5bc4740b0d8afd8990b485eacd50
2021-09-14 09:11:14 +00:00
Neels Hofmeyr 5d7d13f5eb bsc: add TC_ctrl_trx_rf_locked
Related: OS#5542
Depends: Ie46fd730797b64fb185d705c3507e36f5f23ef4b (osmo-bsc)
Change-Id: I2bb5096732f75a7341c7e83951e63c5a2038b469
2021-09-14 08:31:04 +00:00
Neels Hofmeyr a41ae30a1e bsc: verify new CTRL 'rf_states' and 'bts.N.rf_states'
Related: SYS#5542
Depends: I14fa2678fc8f2c11a879c5e9615ac552782c5b7e (osmo-bsc)
Change-Id: I01e6f391a5e71b0606c42be9b57f8a1687d59bcb
2021-09-14 08:31:04 +00:00
Neels Hofmeyr 5ce3ae400d bsc: add TC_stat_num_bts_connected_* tests
Related: SYS#5542
Depends: I2057a798e681a169cc03243a09b3d6449734c010 (osmo-bsc)
Depends: Idace66b37492fe96b2f2e133a69cac7960ca279c (libosmocore)
Change-Id: Ic1b35b7406547f92818afe399a2383d154576409
2021-09-14 08:31:04 +00:00
Neels Hofmeyr 0bc470d206 bsc: add TC_stat_num_msc_connected* tests
Verify MSC connection count stats.

Related: SYS#5542
Depends: Idace66b37492fe96b2f2e133a69cac7960ca279c (libosmocore)
Depends: If76bbf9b3adb64c68d5c31c6b526fa71a99996ae (osmo-bsc)
Change-Id: I178dcf4516606aa561d47b06061b8a416d3c40cf
2021-09-14 08:31:04 +00:00
Neels Hofmeyr 9db8e0e077 bsc: reset MSC link stati in f_init()
I want to add tests that verify the stat items reflecting the MSC
connection status. To be able to run a test expecting fewer connected
MSC after a test that launched more MSCs requires the links to be reset.

Related: SYS#5542
Depends: I1975941b790d2b30d0904d41e456220cba26ecff (osmo-bsc)
Change-Id: Ice3056dc46c94f9399f8379db7aeb7193782f2f2
2021-09-14 08:31:04 +00:00
Neels Hofmeyr 58be48a16a bsc: make TC_stats_conn_fail less fragile
Add a delay between sending the RSL Conn Fail IND and checking the stats
values, so that osmo-bsc has a good chance of receiving the message and
promoting the failure into the stats values first.

Even though jenkins shows no failures, when testing locally, this test
fails a lot for me without that bit of delay.

Change-Id: Iaf0173239528337283b23f70840d36ad25f14950
2021-09-14 08:30:13 +00:00
Neels Hofmeyr 2315874f28 bsc: add TC_imm_ass_pre_ts_ack
Also test the early IA feature for non-dyn TS in 'pre-ts-ack' mode, for
completeness' sake.

Related: SYS#5559
Change-Id: I6ba84b4b618dd99ec2095aaf611209e525f2b5f4
2021-09-09 11:46:27 +00:00
Oliver Smith 72d0c693ab Cosmetic: pcu: fix GprsMS count comment
Related: SYS#4878
Change-Id: Ic11abb330eccf8572a95ddb7e7c59c57b018a713
2021-09-08 10:04:15 +02:00
Neels Hofmeyr 07603cffe9 bsc: properly check TSC and ARFCN in early IA tests
Tests have shown that the Training Sequence Set was not correct in early
IMM ASS messages. Add validation of the TSC and ARFCN in IMM ASS
messages for all early IA related tests. This makes the tests fail.

Related osmo-bsc patch linked below makes the tests pass again.

Related: SYS#5559
Related: I9f26074154600d854a0b3baee2f38a6666f4cb56 (osmo-bsc)
Change-Id: I4479244b0c53648e62e84e1ebf986f51d659484f
2021-09-07 19:24:23 +02:00
Neels Hofmeyr 8f17e05e25 fix errmsg in f_ctrl_set() which said "GET"
Change-Id: I56cd20c3c1b22ac0b1e5c03727c4e6d6cbfa6973
2021-09-07 17:23:17 +00:00
Alexander Couzens 9061ebd70f ns2: add tc TC_mirror_unitdata_tx_status_blocked
Change-Id: I9be2037b9228d2400bd293841ae6b957cb25c501
2021-09-07 12:42:48 +00:00
Alexander Couzens 13b3ec8534 ns: add test case for SIZE after a successful configuration
Change-Id: I5a7d55e9b3d28872baa4259f33333db8c0d6081d
2021-09-07 12:42:48 +00:00
Alexander Couzens 357c572ad2 ns: add test case for UNITDATA transmission
Change-Id: I5f59581d4257436eb9651c0c5ab5dd002f23d834
2021-09-07 12:42:48 +00:00
Alexander Couzens 24788049b8 ns: fix missing f_ prefix for function f_tx_block_by_vty
All function should have this prefix

Change-Id: Id7b692b3b76946b36dcaa3d23b32b5ccb5007702
2021-09-07 12:42:48 +00:00
Alexander Couzens 3674405a1b ns: always clean up the ns_codec
The f_clean_ns_codec() was introduced later to clean up the ns_codec
properly.

Change-Id: I7a84f75ebd1c68b3c0a6b55b8c49903c51dd6b92
2021-09-07 12:42:48 +00:00
Alexander Couzens 94d3d10777 ns: add tests to test UNITDATA over a BLOCKED nsvcs
The UNITDATA should be rejected by a NS STATUS PDU.

Change-Id: I62ce93ca4953f8b0476a15479089db2f6c2fa684
2021-09-07 12:42:48 +00:00
Alexander Couzens 717bb2167b ns: add TC_sns_sgsn_size_correct_port to check if SIZE_ACK is transmitted from the correct port
Change-Id: Ib0fbf0cc87ff8f00fd4062b471d7a4835b45723c
2021-09-07 12:42:48 +00:00
Alexander Couzens bdef810edc ns: f_init_vty: only reset SNS configuration when using SNS.
Change-Id: I9ecf0abe29e5acdd18f4b18b340baeb442cc09b6
2021-09-07 12:42:48 +00:00
Alexander Couzens fdfe638cff ns: add TC_sns_bss_remove_bind_fail_sns to check SNS fails correct when removing a bind
This TC produces an abort of the ns2 dummy by the memory sanitizer.
Test if SNS fails when removing a bind which has the last valid connection.
The ns2 has 2 binds, ttcn3 1 bind. There are 2 NSVCs.

Bind -- NSVCs -- Bind.

(ns2)      (ttcn3)
1*-----------*1
            /
2*-broken--/

Remove the 1st ns2 bind after the other NSVC has failed.

Change-Id: I8f7daee7a3bcadf64e8ae607619425adbefe3c4b
2021-09-07 12:42:48 +00:00
Oliver Smith 3d174882ba pcu: add TC_stat_pdch_avail_occ
Test new stats bts.N.pdch.available/occupied, which count available
PDCHs (3GPP TS 52.402 § B.2.1.38) as well as occupied PDCHs
(§ B.2.1.42-44).

Related: SYS#4878
Related: osmo-pcu I74760a68ee055510a79e80854ec7bf1521669119
Change-Id: I607b4729740159c161af824317f9fc04878eb13d
2021-09-06 09:11:30 +00:00
Alexander Couzens 3921fb5b43 ns2: add TC_sns_sgsn_add_change_del similiar to the bss side
1. do SNS configuration
2. add a bind
3. receive the SNS_ADD
4. before answering the SNS_ADD, change the weight via vty and remove the bind

Change-Id: I1a3d2273279f3def0d225ba78d400fb52a958c64
2021-09-04 00:10:40 +02:00
Alexander Couzens 8a682d6d0c ns2: add TC_sns_sgsn_del to test SNS DEL on the SGSN side
Test the SNS DEL procedure when ns2 is operating the SGSN side.

Change-Id: If519da5212470957b922c569b2b8e5a50e12a8a8
2021-09-04 00:07:38 +02:00
Alexander Couzens 8122ed2bfc ns2: mark TC_sns_bss_all_signalling_nsvcs_failed as broken
The test case tests the wrong side. The signalling
and data weight are valid for the other side. The correct
test case needs to add a second bind on the ttcn3 side because
the signalling and data weight is valid for the remote side.

Change-Id: Ice79a038b0b8df9e69232bb24b2f2b18b3632758
2021-09-03 22:48:42 +02:00
Alexander Couzens 6b51a3c866 ns2: add TC_sns_sgsn_add to test SNS ADD on the SGSN role
Change-Id: I7474ea81ee905fb9fffb6c413b312e0b3547ea14
2021-09-03 22:48:42 +02:00
Alexander Couzens 358c74c0ae ns2: add first sgsn test case TC_sns_sgsn_config_success
Checks if the SGSN can success configures a SNS.

Change-Id: Ibacc2f6ad3053ff7b1e00054cabb9ec7010ffab2
2021-09-03 22:48:42 +02:00
Alexander Couzens de3dfaafc6 ns2: introduce module parameter SnsRole
Allow the .cfg to define which tests should be run.
The new SGSN role SNS tests have their own configurations for
TTCN3 and osmo-nsdummy.

Change-Id: If8162f256428e2e1f353ffbf42a7c0cd24bcecd9
2021-09-03 22:48:42 +02:00
Pau Espin 3aa61c66fa pcu: Introduce test TC_pdch_energy_saving
Related: SYS#4919
Related: OS#4772
Change-Id: Icf5cc467ecabe3fcbf86e0f4caf497669b76fb42
2021-08-31 10:10:29 +00:00
Pau Espin 1f7dec451d pcu: as_rx_fail_dummy: Drop unneeded dependency on ms param
The parameter is not used, so let's drop it and rename it to make it
usable without ms.

Change-Id: I57e9c754c00f930fccc35cf8d853e576fc8054da
2021-08-31 06:59:12 +00:00
Oliver Smith 59a843cac1 Cosmetic: bsc: remove outdated comment
The mentioned bug was fixed 3 years ago, and there are already lots of
tests below so remove the comment.

Related: OS#3182
Change-Id: I3df4dbd1647dae78eccd31c49c3aec3cf9e12a6f
2021-08-27 08:26:21 +00:00