Commit Graph

398 Commits

Author SHA1 Message Date
Vadim Yanitskiy 64eb8ad759 bts/osmo-{bsc,bts}.cfg: tune logging configuration
Change-Id: I0360fa1db2137bf8e68ba87403742e0e8c9c1147
2021-12-14 12:59:04 +00:00
Vadim Yanitskiy e91bbfc3aa bts/osmo-bts.cfg: use default {fn,rts}-advance values
It's better if we run ttcn3-bts-test with the default values, given
that they were significantly reduced some time ago.

Change-Id: Id97e848e5dfd0b6c504d06f62642511cfd5a0f66
Related: I7da3d0948f38e12342fb714b29f8edc5e9d0933d (osmo-bts)
Related: OS#4487
2021-12-14 00:30:51 +00:00
Vadim Yanitskiy a4b7857b77 bts/osmo-bsc.cfg: fix deprecated BTS type 'sysmobts'
Change-Id: If2f81141707e6f2360fc57bbd5f76606294f8db8
2021-12-14 00:30:33 +00:00
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 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
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
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 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
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 418066a05c f_TRXC_transceive(): accept 'template (value)' parameter
Change-Id: I98012607f3e9da71234333aac77d59936cd3ee20
Related: OS#5245
2021-10-04 12:37:23 +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 af9d6ae0ea bts: add TC_early_immediate_assignment_pre_chan_ack
Related: SYS#5559
Related: Ie52765b238b01f22fb327fe12327fbf10abcad4c (osmo-bts)
Change-Id: Ifb2c62431a91dafa6116b5d6b9410930f00a6e18
2021-08-23 19:15:12 +00:00
Vadim Yanitskiy 18684881bd BTS: add test cases for Downlink and Uplink speech frames
Change-Id: I8d301dfa47c11d9314cdfca8adadcbcb4eee798d
2021-07-16 16:05:52 +00:00
Vadim Yanitskiy dd228c4324 BTS: equip ConnHdlr with the RTP emulation component
Change-Id: Icb04cb73d8d55eb75edc2af2f18bb99d2c3f24a5
2021-07-16 16:05:52 +00:00
Vadim Yanitskiy fc63164bac library/RSL_Types: use OCT4 for local/remote address fields
This way functions like f_inet_addr() and f_inet6_addr() can be
used directly without converting between bytes and integers.

Change-Id: I389a8cb95c025c9dddc751789223621c15d9b48f
2021-07-05 12:09:07 +00:00
Pau Espin 8e57ac1a3c bts: Introduce test TC_dyn_osmo_pdch_sdcch8_act
Change-Id: I16d5f32697d2b5df97419d39a3948777bedfc1b5
2021-07-02 11:48:50 +00:00
Vadim Yanitskiy 6860e864d8 BTS_Tests.ttcn: fix indention and readability of some comments
Change-Id: I95c63c2d2498fec1915a2333d31d05f433560830
2021-06-30 08:01:09 +00:00
Vadim Yanitskiy 79e15161c2 BTS_Tests_SMSCB: ensure f_shutdown() is called in all test cases
This fixes sporadic test case failures due to race conditions.

Change-Id: I3f2c327e1e44d5decd4a936f063af649687f950a
2021-06-30 08:01:09 +00:00
Philipp Maier ca058278c9 BTS_Tests: add testcase TC_paging_imsi_200percent_with_ps
The current paging load tests only test what happens when the paging
load is introduced from the PS side. However there are no tests that
tests what happens when PS pagings are introduced from the PCU side
into an already overloaded system.

osmo-bts was equipped recently with a mechanism that detects congestive
situations. Once a congestion is detcted osmo-bts will drop pagings from
the BTS side. The rationale of the new testcase is that the behavior
must not change when the PS pagings start since osmo-bts is dropping
them.

Change-Id: Ie72e788d9ebff6ca4e50314746127a9689948062
Depends: osmo-bts I30f97672d7a0c369c4a656e878ab8cbbd83e31ea
Related: SYS#5306
2021-06-28 08:47:04 +00:00
Pau Espin 65d712e973 bts: Test forwarding PCUIF<->IPA/OSMO/PCU
Change-Id: I78880098a55d1cb456011746efa0a47832a86ca8
2021-06-28 10:43:21 +02:00
Pau Espin 6c864ec07a bts: Rename function issuing OML SetAttributes
GetAttributes support will be introduced next, and current naming is
misleading.

Change-Id: Id84eda70e97364b7ec6a8d351f0b54f07faba670
2021-06-25 13:52:30 +02:00
Pau Espin 6924ef7199 bts: Support passing PCUIF messages over IPA multiplex
Related: SYS#5303
Change-Id: I3cd0988cb654f1c5816d1c4717255a5e802d7925
2021-06-25 13:28:20 +02:00
Vadim Yanitskiy 83852c171b BTS: add a testcase for PDCH interference reports
Change-Id: I39e70524ad3d2ee51b537c8f786b7754a02949b1
Related: SYS#5313, OS#1569, OS#1866
2021-06-22 20:07:48 +02:00
Vadim Yanitskiy 98c4a1a3b9 BTS: add a test case for RF RESource INDication
Change-Id: I78b6d8beffa5228a28231b75728e7aebdd3cb23c
Related: SYS#5313, OS#1569, OS#1866
2021-06-22 20:07:48 +02:00
Vadim Yanitskiy beda697221 [VAMOS] BTS: call f_shutdown() in f_TC_vamos_exec_async()
Sometimes, VAMOS related test cases fail due to a DTE:

  Dynamic test case error: Sending data on the connection of port
                           CCHAN_PT to 1:RSL_CCHAN failed. (Broken pipe)

Call f_shutdown() to ensure that all components are properly
terminated, so there will be no race conditions like this.

Change-Id: I690412a29b24571109415d32b09543de459076d1
Related: SYS#4895
2021-06-21 20:18:05 +00:00
Vadim Yanitskiy 6b4404a717 BTS: release the channel in TC_ms_pwr_ctrl_{constant,pf_ewma}
Since recently, we do have NOPE indications in the virtual Um
environment.  Somehow this broke test cases for the MS power
control.  Releasing the channel makes everything work again.

Change-Id: I6a204bbecfe116aa302eae28ff24d6bb899fa8b7
Related: SYS#5313, OS#1569, OS#1866
2021-06-18 16:00:55 +00:00
Vadim Yanitskiy 2372db6aee BTS: ignore other RSL messages in function f_TC_paging()
Recent changes [1] to osmo-bts make it periodically send the
RF RESource INDication messages for each transceiver over the
A-bis/RSL.  These messages block the queue of 'RSL_CCHAN' port
and make the paging related test cases fail.  Ignore them.

Change-Id: I18b879235c6eefb2dd89a3f4502b0830efeac6bb
Related: [1] Id80fdbef087de625149755165c025c0a9563dc85
Related: SYS#5313, OS#1569
2021-06-09 01:11:28 +02:00
Vadim Yanitskiy 0d4e3cb070 BTS_Tests.cfg: also execute LAPDm related test cases
Change-Id: If632fdd740634e4e115e4aea56940033b18f5736
2021-06-04 20:05:32 +00:00
Vadim Yanitskiy 4c58c6a377 [VAMOS] BTS: add MODE MODIFY test cases
Change-Id: If4202287902442629bab716e41d3e6b2d05d09fb
Related: SYS#4895, OS#4941
2021-06-01 04:24:39 +02:00
Vadim Yanitskiy 7387813db0 [VAMOS] BTS: add CHANnel ACTIVation test cases
Change-Id: I79817b3504b0d956e9fa52b8640d3a4d0fd2c4ba
Related: SYS#4895, OS#4941
2021-06-01 04:22:11 +02:00
Vadim Yanitskiy 918e2b2834 HACK: allow running parallel BTS_Tests.ConnHdlr components
Unfortunately, trxcon does not support handling more than one
connection in parallel.  If there is already one connection
established, it would reject all other connection attempts.

This causes an error in f_handler_init().  As a quick hack,
let's allow running BTS_Tests.ConnHdlr components without
establishing L1CTL connections at all.

Change-Id: I72bcaed6c3803a0e18c9b787036a441e30c220cc
Related: SYS#4895, OS#4941
2021-06-01 04:16:52 +02:00
Vadim Yanitskiy 1b9a7f663a BTS_Tests: accept templates as parameters in t_EITC()
Change-Id: I56cd32a6ba91c078608d64c95538b9a43e2fada9
Related: SYS#4895, OS#4941
2021-06-01 04:16:49 +02:00
Vadim Yanitskiy 7368a10460 BTS_Tests: make it less private and more friendly
These definitions will be also used in 'BTS_Tests_VAMOS' module.

Change-Id: Ia4eae7f14228e72cd63bd8f84e27606ac972006c
Related: SYS#4895, OS#4941
2021-06-01 04:16:44 +02:00
Vadim Yanitskiy 0310f63d81 BTS_Tests: use as_l1_exp_lapdm() in f_TC_rll_est_req()
Change-Id: Ic0ecef07385621e0f0fbdae67daad95ef628cdd5
Related: SYS#4895, OS#4941
2021-06-01 04:16:42 +02:00
Vadim Yanitskiy e6c175575a BTS_Tests: accept optional TestSpecUnion in t_Pars
Change-Id: I75462c3d30544bb87b578f2627b304cce57393e5
Related: SYS#4895, OS#4941
2021-06-01 04:16:18 +02:00
Eric Wild b926039772 bts: add first a5/4 tests
Not much to do here, bts just passes the key.

Related: SYS#5324
Change-Id: I38e8a1cf15eb41a621b457b39024283a767c94be
2021-05-17 20:28:26 +00:00
Vadim Yanitskiy 7dad608cdc BTS_Tests: as_l1_sacch(): make MEAS_VALID flag configurable
Change-Id: I25ce3332671c42014a3dfd5de7ed1df16e73fbf8
Related: SYS#4918
2021-04-16 23:04:44 +00:00
Vadim Yanitskiy cb57c1b137 BTS_Tests: as_l1_sacch(): use values from ConnL1Pars
This would allow a test case to change the indicated values.

Change-Id: If56bf516bc64e695fb58fd42beda01101cdaa954
Related: SYS#4918
2021-04-16 23:04:30 +00:00
Vadim Yanitskiy 94bbe99796 BTS_Tests: refactor and fix TC_pcu_socket_connect_multi
The expectations of this test case were wrong.  The IUT would first
accept() an additional connection and then close() it immediately.
Since there may be other messages, like TIME.ind and DATA.ind, the
'alt' statement would not match successful connection result, and
instead would unblock the flow due to timeout.

The titan.TestPorts.UNIX_DOMAIN_SOCKETasp had to be changed [1] to
send UD_connect_result with ERROR if recv() returns zero or a negative.

[1] https://github.com/eclipse/titan.TestPorts.UNIX_DOMAIN_SOCKETasp/pull/4

Change-Id: I898b8b14515d79766b12d652ebb1ddf834e2863c
2021-04-01 15:34:39 +00:00
Vadim Yanitskiy 216021a35e BTS_Tests: fix IPv4 matching in TC_pcu_socket_{nsvc_ipv4,two_nsvc}
This commit fixes a regression introduced in [1]

Change-Id: I107039f1ff44ae8c41d690f5f293ed136c17586b
Fixes: [1] Ia9f366ca1fdad700a90ca3367e43523f7bac39a1
2021-03-24 15:51:40 +01:00
Vadim Yanitskiy ec9e981c74 BTS_Tests: do not connect to PCUIF socket if not used
The PCUIF connection involves a lot of frequent messages, such as
the TIME.ind and since recently DATA.ind with len=0.  As a result,
the test suite logs are getting unreadable due to lots of coding
warnings and port queueing notifications.

This change is aimed to improve the situation a bit, by establishing
the PCUIF connection only for those test cases which actually use it.

Side effects:

  * TC_pcu_socket_verify_info_ind becomes reliable, because the
    PCUIF establishment is done after the RSL bootstrapping;

  * TC_pcu_socket_connect_multi starts to fail, because it used
    to pass due to timeout, since not all messages are handled
    in the 'alt' statement.

Change-Id: I09ccb65ce94a41ffdad4e93da650c3f32d422af4
Related: OS#5083
2021-03-23 13:41:09 +00:00
Vadim Yanitskiy c1981b7a5b BTS_Tests: cosmetic: s/f_init_pcu_test/f_init_with_pcuif/
Change-Id: Ic95c46426ed3ac9ead645037059190fead181b31
2021-03-23 13:41:09 +00:00
Vadim Yanitskiy e2a50a88ac BTS_Tests: add a test case verifying coding of two NSVCs in INFO.ind
Change-Id: Id11094774d737a545a2cce389059d7e527219573
2021-03-23 13:41:09 +00:00
Vadim Yanitskiy 1da1fefb73 library/PCUIF_Types: get rid of version 9 compatibility glue
Change-Id: Ia9f366ca1fdad700a90ca3367e43523f7bac39a1
Related: OS#5083
2021-03-23 13:41:09 +00:00