From da2ddb8757c63c9258302bdfaa76407683c9a666 Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Wed, 29 May 2019 17:28:21 +0000 Subject: ttcn3-bts-test: Add virtphy based PCUIF tests Some tests require GPRS features not yet present in trxcon, so we have to fall back using virtphy. Change-Id: I2f17f03194a4dfa0abca51b0d3e22b3934d08a9a --- ttcn3-bts-test/jenkins.sh | 36 ++++++++++++++-- ttcn3-bts-test/virtphy/BTS_Tests.cfg | 29 +++++++++++++ ttcn3-bts-test/virtphy/osmo-bts.cfg | 80 ++++++++++++++++++++++++++++++++++++ 3 files changed, 142 insertions(+), 3 deletions(-) create mode 100644 ttcn3-bts-test/virtphy/BTS_Tests.cfg create mode 100644 ttcn3-bts-test/virtphy/osmo-bts.cfg diff --git a/ttcn3-bts-test/jenkins.sh b/ttcn3-bts-test/jenkins.sh index 20f9373..4feb8f5 100755 --- a/ttcn3-bts-test/jenkins.sh +++ b/ttcn3-bts-test/jenkins.sh @@ -22,14 +22,20 @@ start_bsc() { } start_bts() { + local variant + variant="$1" echo Starting container with BTS + if [ -z "$variant" ]; then + echo ERROR: You have to specify a BTS variant + exit 23 + fi docker run --rm \ --network $NET_NAME --ip 172.18.9.20 \ -v $VOL_BASE_DIR/bts:/data \ -v $VOL_BASE_DIR/unix:/data/unix \ --name ${BUILD_TAG}-bts -d \ $REPO_USER/osmo-bts-$IMAGE_SUFFIX \ - /usr/local/bin/respawn.sh osmo-bts-trx -c /data/osmo-bts.cfg -i 172.18.9.10 + /usr/local/bin/respawn.sh osmo-bts-$variant -c /data/osmo-bts.cfg -i 172.18.9.10 } start_fake_trx() { @@ -56,6 +62,16 @@ start_trxcon() { trxcon -i 172.18.9.21 -s /data/unix/osmocom_l2 } +start_virtphy() { + echo Starting container with virtphy + docker run --rm \ + --network $NET_NAME --ip 172.18.9.22 \ + -v $VOL_BASE_DIR/unix:/data/unix \ + --name ${BUILD_TAG}-virtphy -d \ + $REPO_USER/osmocom-bb-host-master \ + virtphy -s /data/unix/osmocom_l2 +} + start_testsuite() { echo Starting container with BTS testsuite docker run --rm \ @@ -84,16 +100,30 @@ mkdir $VOL_BASE_DIR/unix mkdir $VOL_BASE_DIR/fake_trx +# 1) classic test suite with BSC for OML and trxcon+fake_trx start_bsc -start_bts +start_bts trx start_fake_trx start_trxcon start_testsuite -echo Stopping containers +# 2) some GPRS tests require virt_phy +echo "Changing to virtphy configuration" +# switch from osmo-bts-trx + trxcon + faketrx to virtphy + osmo-bts-virtual docker container kill ${BUILD_TAG}-trxcon docker container kill ${BUILD_TAG}-fake_trx docker container kill ${BUILD_TAG}-bts +cp virtphy/osmo-bts.cfg $VOL_BASE_DIR/bts/ +start_bts virtual +start_virtphy +# ... and execute the testsuite again with different cfg +cp virtphy/BTS_Tests.cfg $VOL_BASE_DIR/bts-tester/ +start_testsuite + + +echo Stopping containers +docker container kill ${BUILD_TAG}-virtphy +docker container kill ${BUILD_TAG}-bts docker container kill ${BUILD_TAG}-bsc network_remove diff --git a/ttcn3-bts-test/virtphy/BTS_Tests.cfg b/ttcn3-bts-test/virtphy/BTS_Tests.cfg new file mode 100644 index 0000000..ee3455d --- /dev/null +++ b/ttcn3-bts-test/virtphy/BTS_Tests.cfg @@ -0,0 +1,29 @@ +[ORDERED_INCLUDE] +"/osmo-ttcn3-hacks/Common.cfg" +"/osmo-ttcn3-hacks/bts/BTS_Tests.default" + +[LOGGING] +*.JUnitLogger.filename_stem := "junit-xml-virtphy" + +[TESTPORT_PARAMETERS] +*.BTSVTY.CTRL_HOSTNAME := "172.18.9.20" +*.BSCVTY.CTRL_HOSTNAME := "172.18.9.11" + +[MODULE_PARAMETERS] +BTS_Tests.mp_rsl_ip := "172.18.9.10" +BTS_Tests.mp_bts_trxc_ip := "172.18.9.21" +BTS_Tests.mp_pcu_socket := "/data/unix/pcu_sock" +L1CTL_PortType.m_l1ctl_sock_path := "/data/unix/osmocom_l2" +BTS_Tests.mp_ctrl_ip := "172.18.9.20" +BTS_Tests.mp_l1_supports_gprs := true +BTS_Tests.mp_bts_trxc_port := -1; + +[MAIN_CONTROLLER] + +[EXECUTE] +BTS_Tests.TC_pcu_data_req_pdtch +BTS_Tests.TC_pcu_data_req_ptcch +BTS_Tests.TC_pcu_data_req_wrong_bts +BTS_Tests.TC_pcu_data_req_wrong_trx +BTS_Tests.TC_pcu_data_req_wrong_ts +BTS_Tests.TC_pcu_data_req_ts_inactive diff --git a/ttcn3-bts-test/virtphy/osmo-bts.cfg b/ttcn3-bts-test/virtphy/osmo-bts.cfg new file mode 100644 index 0000000..5957f03 --- /dev/null +++ b/ttcn3-bts-test/virtphy/osmo-bts.cfg @@ -0,0 +1,80 @@ +! +! OsmoBTS (0.4.0.446-e0fb) configuration saved from vty +!! +! +log file /data/osmo-bts.log + logging filter all 1 + logging color 0 + logging print category 1 + logging timestamp 1 + logging print extended-timestamp 1 + logging level rsl info + logging level oml info + logging level rll notice + logging level rr notice + logging level meas info + logging level pag info + logging level l1c info + logging level l1p notice + logging level dsp info + logging level pcu debug + logging level ho notice + logging level trx info + logging level loop notice + logging level abis notice + logging level rtp notice + logging level sum notice + logging level lglobal notice + logging level llapd notice + logging level linp notice + logging level lmux notice + logging level lmi notice + logging level lmib debug + logging level lsms notice + logging level lctrl notice + logging level lgtp notice + logging level lstats notice + logging level lgsup notice + logging level loap notice + logging level lss7 notice + logging level lsccp notice + logging level lsua notice + logging level lm3ua notice +! +line vty + no login + bind 0.0.0.0 +! +e1_input + e1_line 0 driver ipa + e1_line 0 port 0 + no e1_line 0 keepalive +phy 0 + !virtual-um ms-multicast-group 239.193.23.1 + !virtual-um bts-multicast-group 239.193.23.2 + instance 0 +bts 0 + band DCS1800 + ipa unit-id 1234 0 + oml remote-ip 172.18.9.11 + rtp jitter-buffer 100 + paging queue-size 200 + paging lifetime 0 + uplink-power-target -75 + gsmtap-sapi rach + gsmtap-sapi agch + gsmtap-sapi bcch + gsmtap-sapi pch + gsmtap-sapi sdcch + gsmtap-sapi sacch + min-qual-rach 50 + min-qual-norm -5 + pcu-socket /data/unix/pcu_sock + trx 0 + power-ramp max-initial 0 mdBm + power-ramp step-size 2000 mdB + power-ramp step-interval 1 + ms-power-control dsp + phy 0 instance 0 +ctrl + bind 0.0.0.0 -- cgit v1.2.3