path: root/bts/BTS_Tests.ttcn
AgeCommit message (Collapse)AuthorFilesLines
2018-06-03BTS_Tests: Don't wait indefinitely for ASP_IPA_EVENT_UPHarald Welte1-1/+9
Change-Id: I5150660319896fe7f597ca333395923f128c8d87
2018-05-23Print more self-explanatory error message on bind/connect failuresHarald Welte1-0/+8
When sockets cannot be bound or connected, the existing TTCN-3 code prints the following rather cryptic error messages: "IPA-CTRL-IPA(47)@f70ff1fd5cfd: Dynamic test case error: Using the value of an optional field containing omit. (Transport endpoint is not connected)" The "Transport endpoint is not connected" sort-of gives it away, but let's make it more explicit by introducing explicit checks for the res.connId and manual setverdict(fail) statements with proper error message. Change-Id: Id22a1b5189d81c4fca03d5e7aff60ffdd1ad56bf
2018-05-10bts: Fix TC_rll_rel_req()Harald Welte1-1/+1
The test case was broken (c/r bit), the BTS operated correctly. Change-Id: I07285aa715fa218c62b9fd2d81c88e73a4117f08
2018-05-10bts: ciphering testsHarald Welte1-12/+251
Change-Id: If450e36cfd8cde713f304e57ec09bc1239bdf7ea
2018-05-09bts (RLL): DCCH/SAPI0 LAPDm without contention resolution is legalHarald Welte1-3/+3
The diffrence is whether we establish the LAPDm link * after RACH + IMM.ASS (we must include L3 payload for contention resolution required) * after assignment from one channel to another (we must not include L3 payload, i.e. no contention resolution) Change-Id: Ib67763856ffc5f5fd04a87f4192705777931c400 Related: OS#3252
2018-05-09bts: fix TC_dyn_osmo_pdch_double_actNeels Hofmeyr1-1/+3
Do not expect success on second activation. Change-Id: I6b1ef158e1fdb32b392aa15bff71d0fe30ce6f1f
2018-05-09bts: fix TC_dyn_osmo_pdch_unsol_deactNeels Hofmeyr1-4/+3
TC_dyn_osmo_pdch_unsol_deact sends a release request on an already released lchan, which obviously would never trigger a change in the PCU configuration and hence it makes no sense to expect a PCU info ind to be sent. Instead of f_dyn_osmo_pdch_deact(), which expects a PCU info_ind, just send a CHAN_REL and expect a trivial REL_ACK. Drop some unused local vars. Change-Id: I6b790e866ce4e66d9385b286b727ae41a83d3e67
2018-05-09bts: Add RLL testsHarald Welte1-3/+450
This adds a series of test cases to BTS_Tests.ttcn implementing testing of the RLL sub-layr of RSL, i.e. the translation between LAPDm frames on the Um interface and the RLL frames on the Abis side (and vice vrsa). Related: OS#3174 Change-Id: I336378de6106e5369600cbb49e0c47cc59864630
2018-04-18LAPDm: Re-structure: Merge Frame type A+B which are really the sameHarald Welte1-4/+4
A is B with zero-length payload. No need to separate them. Change-Id: I7b3079899f42a61d67be03e3a17346af80d7b3be
2018-04-15bts: Reduce threshold for BTS_Tests.TC_paging_tmsi_200percentHarald Welte1-1/+1
for some reason, the number of TMSI paging requests that arrive on the jenkins build slave is quite a bit lower than those I see on my laptop. Let's adjust our expectations to make the test pass. Change-Id: I548dedd1b3391d059a141a2eef71c32be4b97cc1 Closes: OS#3025
2018-04-15bts: Fix SI13 related scheduling testsHarald Welte1-2/+2
Closes: OS#3027 Change-Id: I9363763035007bd11877b867fe360c3614e4c7ce
2018-04-05bts: Add first tests about IPA style dynamic PDCHHarald Welte1-1/+181
Change-Id: I56d8b0284e8e4eee4ce6454f7a495ee09c40fe42
2018-04-05bts: Add first five dynamic PDCH testsHarald Welte1-1/+193
NOTE: This needs changes to your osmo-bsc.cfg, as it will now need an osmocom-style dyn PDCH on TS4, and an IPA-style dny PDCH on TS3. --- a/ttcn3-bts-test/osmo-bsc.cfg +++ b/ttcn3-bts-test/osmo-bsc.cfg @@ -154,10 +154,10 @@ network phys_chan_config TCH/F hopping enabled 0 timeslot 3 - phys_chan_config TCH/F + phys_chan_config TCH/F_PDCH hopping enabled 0 timeslot 4 - phys_chan_config TCH/F + phys_chan_config TCH/F_TCH/H_PDCH hopping enabled 0 timeslot 5 phys_chan_config TCH/H Corresponding change in docker-playground.git has Change-Id I229000ce7609845fdf24cafe1f5ec2bfa3f507e8 Change-Id: I2a42531dc5555ab4772d538fda462343605b8feb
2018-04-04BTS_Tests: Prepare for ConnHdlr with PCU socket accessHarald Welte1-11/+23
For upcoming dynamic PDCH activation/deactivation tests we would like to access the PCU socket from ConnHdlr, rather than test_CT. Let's prepare for that. Change-Id: Ib8811dd87f737f326f7ed8f652aa6f552c3f05f8
2018-04-03bts: enable CTRL interface testsNeels Hofmeyr1-0/+5
Start and stop the CTRL interface and provide CTRL bind interface config modulepars. Possibly everyones' local setups may need modification to allow the ttcn3-bts-tests to reach osmo-bts-trx's CTRL port. WARNING: This commit has to be merged "at the same time" as I1ec86b157ebd46bf622a0ca51eba225f15c99fbb or the jenkins ttcn3-bts-tests will fail. a) if we want to set a modulepar mp_ctrl_ip here, it needs to be added to osmo-ttcn3-hacks. b) if we have the f_ipa_ctrl_start() in osmo-ttcn3-hacks, we need to configure the proper IP and bind interface here, or all tests will fail because f_ipa_ctrl_start() cannot connect. Change-Id: I502b4891e6720ae2fb251c03542f707880a6f728
2018-04-02bts: new f_rsl_transceive_ret(): like f_rsl_transceive() with return valueHarald Welte1-4/+13
Change-Id: I0cdc6b87566b9d101ecb12a77eac18a50689e088
2018-03-17bts: Add TC_sacch_multi_chgHarald Welte1-0/+72
Change-Id: I0b002488729f30cc8d0ff6f4ca16637c35ee956f
2018-03-17bts: Add TC_sacch_multi to test for scheduling of multiple SI on SACCHHarald Welte1-1/+46
Change-Id: I2b9a68a0dc004c2ebc8a39f0c7b7aad690675a2d
2018-03-13bts: Verify the PCU protocol interface versionHarald Welte1-5/+6
Change-Id: If2033720a38879cd2f4c4f8d3fe3fed1468da3cb
2018-03-12bts: Add TC_sacch_info_mod and TC_sacch_fillingHarald Welte1-0/+105
Change-Id: I38b3e302eddb699b2dbdae06fc929dd59de7b2dc
2018-03-12bts: Add f_rsl_transceive() flag to ignore all unrelated messagesHarald Welte1-6/+8
f_rsl_transceive() is currently using a number of default altsteps, but those are not applicable in all cases. Let's make this configurable, and use that flag during channel release. Change-Id: I34d8e9350dbe2b032a7454d7f003262e27c802ad
2018-03-12bts: Add TC_deact_sacch()Harald Welte1-0/+91
This test case checks on each logical channel if the DEACT SACCH RSL message actually deactivates downlink SACCH as expected. Change-Id: Id8219ffce0635071cb50669b89368de51fe82843
2018-03-12bts: Add f_shutdown() for clean shutdown; use it from testsHarald Welte1-4/+35
Change-Id: I225d2363c77dce969bda95ff27506bece586a34a
2018-03-12bts: Send DM_REL_REQ to L1 when closing logical channelHarald Welte1-0/+1
Change-Id: I0c0bb52b4de20dfd2d4ea8d0045ea63d84686ac5
2018-03-12bts: f_rsl_transceive: Add altsteps for sacch/facch/meas_repHarald Welte1-0/+3
It may be that during CHAN DEACT we still receive any of those messages, which is not an error condition. Let's activate the related altsteps. Change-Id: Ic27b28ead3fc4bff82655d0e8d88fda01b71eca7
2018-03-12bts: Make f_TC_meas_res_periodic work with real BTSHarald Welte1-5/+10
In a real BTS + OsmocomBB-L1, we cannot control fake ToA/RSSI, but we simply assume the signal is strong/good. Change-Id: I55a79f9e23118d2bb28f27cbcc7ab28712570ef1
2018-03-12bts: Ignore first MEAS REP as it often contains bogus valuesHarald Welte1-2/+12
The first measurement report typically has bad performance as it contains measurements taken before the MS actually started to transmit on it. Let's make sure we only validate all but the first MEAS REP Change-Id: I5edfdca0c2b5c63073dca7f12f9c0d447e37995c
2018-03-12bts: Introduce RxLev/RxQual tolerance valuesHarald Welte1-4/+43
In real-world measurements there's always some tolerance. Use templates for integer ranges of rxlev + rxqual and add some module parameters to make them configurable. Change-Id: I41396ad081706a0dbd6cc992b81d9bba266b6d6d
2018-03-12bts: Make PCU and TRXC sockets optionalHarald Welte1-4/+13
If we want to test with a real (remote) BTS, we can neither access the PCU socket nor is there any fake_trx control socket for fake toa/rssi Change-Id: Ibb02cf289b0d2e77170f146463822c164efc21cd
2018-03-12bts: Align default SI contents with what we see from OsmoBSCHarald Welte1-5/+5
Change-Id: I8d0fa73e1a9b859e1833b0d2ce8cb6bbf07938cc
2018-03-12BTS_Tests: Access Control Classes are invertedHarald Welte1-1/+1
No normal phone would ever send us a RACH request due to all ACC being barred in the SI of BTS_Tests Change-Id: I149dca67971bde3072ec2081d9ad7e8f43434ebf
2018-03-12L1CTL/bts: Fix tons of compiler warnings by splitting rx+tx templatesHarald Welte1-19/+22
Change-Id: I9c8be0856516a6a168795c792f76d14c08c3dabb
2018-03-12bts: Add test for SI1 schedulingHarald Welte1-2/+9
We so far only tested combinations without SI1 present, let's change that. Change-Id: I5a62901a9477a75dce12299a0b1359d7744f75f3 Related: OS#3051
2018-03-12BTS_Tests: Fix SI L2 pseudo-length and rest octetsHarald Welte1-7/+7
Now the cell is actually recognized by phones Change-Id: I76b5b178b6884241cfa9b86550aac4865419ef76
2018-03-05bts/BTS_Tests.ttcn: update TC_rach_max_ta test caseVadim Yanitskiy1-1/+3
Since the I662294fe3136cf7a259be13816a3e63f7db9a948, OsmoBTS should pass RACH requests with ToA > -2 symbol periods only. We do allow early signal arrival up to 2 symbols, otherwise it is most likely noise, interference or a ghost. Change-Id: Icccc88545ed3aabd6da28a40599a8a77d1de477d
2018-03-02bts: f_validate_si_scheduling(): Print correct TC valueHarald Welte1-1/+1
We always claimed "No SI messages for TC=0" even in cases where TC is actually a different value. Change-Id: I53e357c21b3f1090e4e396e292fcd193581d5bb8
2018-03-02f_rach_toffs: Print toffs256 value in verdict when failingHarald Welte1-1/+1
Change-Id: I82a8f7c8dd3ce3327aa43bfb9f03795531718320
2018-03-01bts: ensure fake_trx BB CTRL IP is used from main componentHarald Welte1-2/+2
.. not just from the ConnHdlr component, as in previous patch Change-Id: I3db2884d2519dfd4ae08ff1a4dae5b488677da4c
2018-03-01bts: Make IP address of fake_trx BB CTRL port configurableHarald Welte1-2/+3
Change-Id: Idbfe9e0327ed6acefd87afc8596485a488fc44d9
2018-02-28bts: Update towards most recent "laforge/trx" branchHarald Welte1-5/+5
The existing BTS testing code was based on a ~1 week old version of trxcon+fake_trx from osmocom-bb.git fixeria/trx branch, which has meanwhile evolved: * port number change for TRX protocol * FAKE_TIMING -> FAKE_TOA * we can now expect responses to our UDP control commands Let's adapt the testsuite to those changes Change-Id: I6d0122202e5d23308421e76b75e608d206aab56e
2018-02-28bts: Add PCU Interface testcasesHarald Welte1-0/+417
Change-Id: I671b8e2c61705485f46602f648eb5fdc01db12f7
2018-02-28bts: Fix bugs in RACH Tests (timer not started, wrong CS/PS function)Harald Welte1-3/+3
Change-Id: I619264654bfeafe4b76c8702ede5876a82c32f13
2018-02-27bts: Add test for high-resulotion timing offset / TOA256Harald Welte1-0/+20
this adds a new test that uses VTY to enable TOA256 support in the uplink supplementary measurement and then tests TCH/H measurement reports Change-Id: Id39a71429596d46289a82e539796308816ad86f3
2018-02-27bts: Add TELNET/VTY module so we can interact with BTS VTYHarald Welte1-0/+12
Change-Id: Ia1d6ba2c3534d2daaa5ea1fe60b32a99fa4ddad9
2018-02-27bts: Instruct trxcon for TA=2 at every testcase startHarald Welte1-1/+4
as fake_trx keeps running during the entire test suite run, and the protocol being UDP based, it doesn't know when BTS_Test will re-start and hence the old TA/FAKE_TIMING value will remain until it is set. Let's explicitly set a FAKE_TIMING of two bits at start-up of each test case during f_init() Change-Id: I9f07768346e0d68a4dbe36780e36b799d27a7f06
2018-02-27Add new f_timer_safe_restart() function for warning-safe restartHarald Welte1-3/+2
TITAN will print warnings if a still-running timer is res-started. It will also warn if a not-started timer is stopped, so we need a conditional stop + start if we want to avoid any warnings in a convenient way. Change-Id: Iee83b4905cce3a84eb007ffd189b55f4b54f7cb6
2018-02-27bts: TC_rach_max_taHarald Welte1-0/+64
Change-Id: Idd7335f753f8b1a7d91274dc2c99d51d882309d3
2018-02-27bts: Add TC_rach_content and TC_rach_countHarald Welte1-11/+86
Change-Id: I87abd7172b52aaaaf59bb079de1df99a9edd7381
2018-02-25WIP: bts: SI scheduling testsHarald Welte1-1/+459
This imports those tests from ../sysinfo/Tests.ttcn which deal with the scheduling of SI, not with the actual payload/correctness of their contents. (the latter tests must move to the BSC test suite, as the BTS is only concerned with scheduling the opaque SI blocks as received from the BSC). Change-Id: I65f4b91e81174717a0c484ba5c22bede68683ae1
2018-02-25bts: Add some more comments for better code groupingHarald Welte1-2/+28
Change-Id: Ibe68067f20d72318716c6a27f02d7bc9b56f1b01