Commit Graph

3156 Commits

Author SHA1 Message Date
Vadim Yanitskiy 3b868cb1aa BTS_Tests: make TC_pcu_interf_ind more stable
The first interference report may contain unreliable values, so we
ignore it and start the actual matching only after receiving it.

Change-Id: I44b0db6675ecf740fba7ad2a6882f86da018febf
Related: SYS#5313
2021-11-10 12:57:22 +00:00
Vadim Yanitskiy d9b60e60b9 BTS_Tests: explicitly configure Intave in TC_pcu_interf_ind
Starting from [1] osmo-bts does average the interference levels as
defined by the Intave parameter before reporting over the PCUIF.

In TC_pcu_interf_ind we expect to receive an interference report
every 480ms (one SACCH period), so let's the Intave to 1.

[1] osmo-bts.git I3fbaad5dbc3bbd305b3ad4cb4bfb431a42cfbffc

Change-Id: I070b195af8c62454edd8de961cce6be2c120ae48
Related: SYS#5313
2021-11-10 12:57:22 +00:00
Vadim Yanitskiy f9e31d281b BTS_Tests: add test cases for Temporary ACCH Overpower
Change-Id: Ibdb94aa2779ae4b08f08cfef78c2959ae451a784
Related: SYS#5319
2021-11-10 03:35:19 +03:00
Vadim Yanitskiy e243ef6bf0 library/L1CTL_PortType: add f_L1CTL_rx_data() helper
Change-Id: I254171c6dc83f046b5ad1a72586c097deebb0fa7
Related: SYS#5319
2021-11-09 12:57:48 +00:00
Vadim Yanitskiy 66d3c338c3 library/RSL_Types: add templates for RSL_IE_OSMO_TopAcchCap
Change-Id: If2e287699925c6bb7f93439d0729e16682fab019
Related: SYS#5319
2021-11-09 12:57:48 +00:00
Vadim Yanitskiy a203d3b5e2 library/RSL_Types: add missing RSL_IE_OSMO_TOP_ACCH_CAP
Change-Id: I3bd491fba5b72f0fdd262992a97895f037be69d8
Related: SYS#5319
2021-11-09 12:57:48 +00:00
Vadim Yanitskiy 1f53215f45 library/RSL_Types: add missing RSL_IE_OSMO_REP_ACCH_CAP
Change-Id: I198cbfd176e41c55f67d625d9587ba5b6062f0c4
Related: SYS#5114
2021-11-09 12:57:48 +00:00
Vadim Yanitskiy 9cbb86ff2a library/GSM_RR_Types: remove misleading PADDING attributes
Unfortunately, TITAN has a weird (and often unusable) model of
defining padding in records.  According to its reference guide,
padding length is counted from the beginning of the message.
So if the 'MeasurementResults' is a part of another record, and
there are other fields preceeding it, the encoded representation
of the 'MeasurementResults' may still be shorter than 16 octets.

Change-Id: Ia1c87ae85ee402369dad0dfd81159f179095c8d2
2021-11-09 12:57:48 +00:00
Pau Espin 023330db64 pcu: Improve counter validation
Validate some new counters recently added in osmo-pcu.

Related: SYS#4878
Change-Id: I98e340053c91abdbf28c6e9641190bc78df35eff
2021-11-08 18:42:31 +00:00
Neels Hofmeyr 85fa37f977 bsc: comment: tweak TS reference
Change-Id: I53ec51240d6e9a0f93f784c8afee2f54226cc51f
2021-11-06 16:14:24 +00:00
Vadim Yanitskiy f0310e312f BSC_Tests: fix DTE in TC_lost_sdcch_during_assignment()
This test case fails in ttcn3-bsc-test-sccplite due to:

  BSC_Tests.ttcn:10212 Dynamic test case error:
    Using the value of an optional field containing omit.

Change-Id: I235027c2b53b8f2ae975e25eb7c38b1959668d6f
Related: SYS#5627
2021-11-06 00:54:32 +00:00
Vadim Yanitskiy da5964da5a BTS_Tests: execute test cases for BS power control on TRX1
Otherwise they fail, because BS power control is normally not
permitted on the BCCH carrier (unless it's in power saving mode).

Change-Id: Ied3e38986690850f0323d4db072cf59b6975587e
Related: SYS#4918
2021-11-02 10:54:01 +00:00
Philipp Maier 798d895071 BSC_Tests: set band in f_TC_fh_params_set
The function f_TC_fh_params_set sets frequency hopping parameters. The
ARFCN is also part of those parameters. However, this function does not
set the respective band for the ARFCN that it configurs. This results in
an invalid setting at the BSC that might cause unexpected behavior.

Lets make sure we configure the band parameter correctly before setting
the ARFCN

Change-Id: I447e4145c68c62b11b818e28f0081c19e9107647
Related: SYS#5369
2021-11-01 10:43:31 +01:00
Vadim Yanitskiy f54db11cbc BTS_Tests: make TRX number configurable for ConnHdlr
This change allows running test cases against additional transceivers.

Change-Id: Ifed3891658501e0a04ff89563d0a02f08211eed3
Related: SYS#4918
2021-10-31 21:47:14 +03:00
Vadim Yanitskiy d0eb659fd2 BTS_Tests: separate RACH / IMM ASS from f_est_dchan()
Given that the test suite acts as the BSC, it's known in advance
which exact logical channel is going to be activated.  Therefore,
it's not necessary to send an Immediate Assignment with the known
Channel Description IE over the Um interface (via L1CTL).

On the other hand, we may still want to validate the process of
dedicated channel establishment, involving the use of Immediate
Assignment procedure.  So instead of doing this every time when
a ConnHdlr component needs to activate a logical channel, let's
split the existing logic into a separate test case - TC_est_dchan.

This change facilitates the goal of running test cases against
additional transceivers (not only against C0).  Currently this
is not possible, because a ConnHdlr component has no access to
C0/AGCH when executed on Cx > 0.

Change-Id: I8df3db36f35190241735629a961f09d73bd0e5f5
2021-10-31 16:33:59 +00:00
Vadim Yanitskiy 8f6eae0813 BTS_Tests: add TC_meas_res_speech_{tchf,tchh}_sapi3()
The idea behind these test cases is to make sure that osmo-bts
does send RSL MEASurement RESult messages regardless of what
was received on SACCH: RR Measurement Report or SAPI=3 data.

Change-Id: I7d17d6e5f413f2de78db944f23ad731b81ad24cf
2021-10-30 02:27:10 +00:00
Vadim Yanitskiy 9ff4780505 library/MNCC: implement MNCCv8 encoding/decoding support
Change-Id: I5488c5a4cc671e1d6a0d35b2ff4bdda0b0b48c00
Related: OS#5164, OS#5282
2021-10-28 16:16:33 +03:00
Vadim Yanitskiy f39627432c library/MNCC_Types: set 'sdp' field to omit by default
It's defined as 'optional', so let's rather use omit.

Change-Id: I96b03fe5363cc9bf1df622f7436d1a7c2da7514a
2021-10-28 16:10:27 +03:00
Vadim Yanitskiy d376063719 library/MNCC_EncDec.cc: fix encoding of optional 'sdp' field
Decoding was implemented in [1], but encoding was not.

Change-Id: I82f8afd3e64d83d165a7070a1b82a6276ef0b020
Fixes: [1] Ic9568c8927507e161aadfad1a4d20aa896d8ae30
2021-10-28 16:10:10 +03:00
Vadim Yanitskiy aff226fb03 library/MNCC_EncDec: rip out MNCC version 6 support
The latest release of osmo-sip-connector (1.5.0, 23 Feb 2021) does
support MNCCv7, so there is no need to maintain MNCCv6 support.

Change-Id: Ie45158e805a62e86b9496b46f323b83a74630460
Related: I5448ff931ec33f24f4837a51376f1703fe97683b
Related: OS#5282
2021-10-28 16:10:10 +03:00
Neels Hofmeyr e1a7c4d938 bsc: Introduce test TC_dyn_ts_sdcch8_all_subslots_used
Related: OS#5278
Related: SYS#5309
Change-Id: Iee37eef2012ce2c2e2f0a0db4c26abb75a947d84
2021-10-26 22:18:41 +02:00
Harald Welte 4038d4c4bd sccp: Add TC_process_rx_xudt, verifying reception of SCCP XUDT
Test if a XUDT SCCP message is processed by libosmo-sigtran.  We
assume any XUDT is received (and echoed back) just like normal UDT.

Related: OS#5281, SYS#5674
Change-Id: Idbf6db7a684e51858129618b2fcffcbe55b1b70f
2021-10-26 14:43:33 +02:00
Pau Espin ce4d5bb4a5 bsc: Use NUM_SDCCH_PER_BTS in dyn ts sdcch8 tests
Change-Id: I42bfa1a1e450d15cd4122e996d7936df88917891
2021-10-25 13:31:44 +02:00
Pau Espin d658f345f6 pcu: Introduce test TC_ul_tbf_reestablish_with_pkt_resource_req_n3105_max
Change-Id: I3a50445c707430900c78623c7093ff7eb1f3ed95
2021-10-20 13:35:04 +00:00
Pau Espin 332aba85b0 pcu: Adapt tests to pass with new idle blocks from PCU
Depends: osmo-pcu.git Ife718eeed2af011479c03099ea109518f04567bc
Change-Id: I6e96a7569640695ccfaa94b471384fa301bccd62
2021-10-20 13:35:04 +00:00
Alexander Couzens 0f0409842a ns: fr: fix ttcn & osmo-ns-dummy.cfg
The configuration needs to match the expectation of the test cases.

Change-Id: I6fb6265a2e432e8887f5caea8716b95adee7101c
2021-10-19 18:44:50 +02:00
Vadim Yanitskiy 07e4b633a4 BSC_Tests: fix a minor coding style issue
Change-Id: Ife5d37ebb7850f050c7db0723dfbda4d60d2db1a
2021-10-18 23:34:17 +03:00
Pau Espin 376045711a pcu: Add missing test TC_ul_tbf_reestablish_with_pkt_resource_req in control()
Fixes: cdbe90306b
Change-Id: I1c0bd188ec972e6224c980bf96d7f6da1de98fbc
2021-10-15 14:36:29 +02:00
Oliver Smith f8fe1329e2 regen_makefile.sh: set executable name explicitly
Set the executable name in each regen_makefile.sh explicitly with -e,
instead of having it set indirectly from the first .ttcn file. Make it
consistent by placing the name on top of each of these files.

Fix for warning:
ttcn3_makefilegen: warning: File `BSC_Tests.ttcn' was given more than once for the Makefile.

Related: OS#5252
Change-Id: I5ed03f8f3ed905483620dc7bae33b617bbb8507f
2021-10-13 11:12:22 +02:00
Oliver Smith f92ccad16b mme: link against gnutls
Fix for:
/usr/bin/ld: key_derivation.so: undefined reference to `gnutls_hmac_fast'

Related: OS#5252
Change-Id: Iacddc22ecda187e250db9cfb1ca1d1d341ce78f4
2021-10-12 16:35:01 +02:00
Oliver Smith bd78b61d6a pgw: add missing BSSGP_EncDec.cc
Fix for:
/usr/bin/ld: BSSGP_Types_part_4.so: undefined reference to `BSSGP__Types::dec__PDU__BSSGP(OCTETSTRING const&)'
/usr/bin/ld: Osmocom_Gb_Types.so: undefined reference to `BSSGP__Types::enc__PDU__BSSGP(BSSGP__Types::PDU__BSSGP const&)'

Related: OS#5252
Change-Id: I010df10396d264e67bd8c712daafcfb79262ece2
2021-10-12 16:35:01 +02:00
Oliver Smith efe6244980 selftest: add missing Native_FunctionDefs.cc
Fix for:
/usr/bin/ld: Native_Functions.so: undefined reference to `Native__Functions::f__str__tolower(CHARSTRING const&)'
/usr/bin/ld: Native_Functions.so: undefined reference to `Native__Functions::f__inet__hntoa(OCTETSTRING const&)'
/usr/bin/ld: Native_Functions.so: undefined reference to `Native__Functions::f__inet__haddr(CHARSTRING const&)'
/usr/bin/ld: BSSMAP_Templates.so: undefined reference to `Native__Functions::f__inet6__addr(CHARSTRING const&)'
/usr/bin/ld: BSSMAP_Templates.so: undefined reference to `Native__Functions::f__inet__addr(CHARSTRING const&)'
/usr/bin/ld: Native_Functions.so: undefined reference to `Native__Functions::f__str__toupper(CHARSTRING const&)'
/usr/bin/ld: Native_Functions.so: undefined reference to `Native__Functions::f__inet__ntoa(OCTETSTRING const&)'

Related: OS#5252
Change-Id: I73c225f6699cd272b3eeffb249f3dddd2048bc01
2021-10-12 16:35:01 +02:00
Oliver Smith 2e0e624060 regen_makefile.sh: files/flags in separate lines
Make all regen_makefile.sh more readable and diff friendly by moving
each entry in FILES and CPPFLAGS_TTCN3 into separate lines. Order
entries alphabetically.

Related: OS#5252
Change-Id: I6b6866eb9f6ec6232e4ae434517457a4c8c1c050
2021-10-12 16:35:01 +02:00
Pau Espin 93a7b8b758 bts: TC_meas_res_sign_*: Properly configure supp-meas-info
Since recently, osmo-bts may not be restarting after each test. Which
means the supp-meas-info is not reset when test starts. Hence, some of
these tests started failing because a previous test set a value
different than the default one.

Change-Id: Iaa16b33781a8f490fc1cdbafda407755371dbe7f
2021-10-12 08:08:44 +00:00
Oliver Smith 1cdbf1b51e regen-makefile.sh: remove titan < 6.5.1 code path
Prepare to make osmo-ttcn3-hacks.git work with eclipse-titan 8.0.0,
where "ttcn3_makefilegen -v" does not have a "Product number" anymore.

Fix for:
../regen-makefile.sh: 54: ../regen-makefile.sh: arithmetic expression: expecting primary: " >= 65"

Related: OS#5252
Related: If9fef29ce243be112d3735f0236335197f8f140f
Change-Id: Iec26eafc1ddfa19bc1224f6f2abb7fb35cfc188d
2021-10-11 18:21:25 +02:00
Alexander Couzens 6d916910a3 ns: add test case TC_tx_blocked_foreign_nsvc
Check if a BLOCK PDU over a different/foreign connection is parsed.
* 2x initialize NSVC (RESET/UNBLOCK)
* TTCN  0-> NS: block (nsvci 1)
* TTCN  <-0 NS: block ack (nsvci 1)
* TTCN  1-> NS: unit data (nsvci 1)
* TTCN  <-1 NS: status (blocked)

Change-Id: I2b37a712bd70037b35b9deb8dab4a72d1e1d29fb
2021-10-11 15:18:48 +00:00
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