aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorNeels Hofmeyr <neels@hofmeyr.de>2021-08-16 17:05:51 +0000
committerNeels Hofmeyr <neels@hofmeyr.de>2021-08-18 17:27:04 +0200
commit9eb8c9f0d7b37d70b87ec6a1a5950d69a98f1bc1 (patch)
tree0fb7e6d569c19088ac7ef82d97f6a9ed060e5416 /tests
parentf1312f981837fa95757429372e57fcaedfcb1d13 (diff)
add VTY transcript testing
This is not as trivial as with OsmoBSC or OsmoMSC, because normally the osmo-bts process exits right away when there is no BSC. Hence add --vty-test option to main. Use 'osmo-bts-virtual --vty-test' for testing. The other BTS models require dependencies / configure switches to be built. Essentially copied from osmo-bsc.git: configure.ac: add --enable-external-tests tests/Makefile.am: add 'vty-test' target Add osmo-bts.vty, some trivial VTY node testing. This prepares for adding VTY tests for T timer configuration added in a subsequent patch. Related: SYS#5559 Change-Id: I730daf548a3a9bb116aa8b6d5772ca9af0ada08f
Diffstat (limited to 'tests')
-rw-r--r--tests/Makefile.am28
-rw-r--r--tests/osmo-bts.vty239
2 files changed, 266 insertions, 1 deletions
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 57687eef..8d19e6ee 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -22,12 +22,38 @@ $(srcdir)/package.m4: $(top_srcdir)/configure.ac
echo ' [$(PACKAGE_URL)])'; \
} >'$(srcdir)/package.m4'
-EXTRA_DIST = testsuite.at $(srcdir)/package.m4 $(TESTSUITE)
+EXTRA_DIST = \
+ testsuite.at \
+ $(srcdir)/package.m4 \
+ $(TESTSUITE) \
+ osmo-bts.vty \
+ $(NULL)
TESTSUITE = $(srcdir)/testsuite
DISTCLEANFILES = atconfig
+if ENABLE_EXT_TESTS
+python-tests: $(BUILT_SOURCES)
+ $(MAKE) vty-test
+else
+python-tests: $(BUILT_SOURCES)
+ echo "Not running python-based tests (determined at configure-time)"
+endif
+
+# Run a specific test with: 'make vty-test VTY_TEST=foo.vty'
+VTY_TEST ?= *.vty
+
+# To update the VTY script from current application behavior,
+# pass -u to vty_script_runner.py by doing:
+# make vty-test U=-u
+vty-test:
+ osmo_verify_transcript_vty.py -v \
+ -n OsmoBTS -p 4241 \
+ -r "$(top_builddir)/src/osmo-bts-virtual/osmo-bts-virtual --vty-test -c $(top_srcdir)/doc/examples/virtual/osmo-bts-virtual.cfg" \
+ $(U) $(srcdir)/$(VTY_TEST)
+
check-local: atconfig $(TESTSUITE)
$(SHELL) '$(TESTSUITE)' $(TESTSUITEFLAGS)
+ $(MAKE) $(AM_MAKEFLAGS) python-tests
installcheck-local: atconfig $(TESTSUITE)
$(SHELL) '$(TESTSUITE)' AUTOTEST_PATH='$(bindir)' \
diff --git a/tests/osmo-bts.vty b/tests/osmo-bts.vty
new file mode 100644
index 00000000..4983967e
--- /dev/null
+++ b/tests/osmo-bts.vty
@@ -0,0 +1,239 @@
+OsmoBTS> list
+...
+ show bts [<0-255>]
+ show trx [<0-255>] [<0-255>]
+ show timeslot [<0-255>] [<0-255>] [<0-7>]
+ show lchan [<0-255>] [<0-255>] [<0-7>] [<0-7>]
+ show lchan summary [<0-255>] [<0-255>] [<0-7>] [<0-7>]
+ show bts <0-255> gprs
+...
+ show e1_driver
+ show e1_line [<0-255>] [stats]
+ show e1_timeslot [<0-255>] [<0-31>]
+...
+OsmoBTS> ?
+...
+ show Show running system information
+...
+
+OsmoBTS> show ?
+...
+ bts Display information about a BTS
+ trx Display information about a TRX
+ timeslot Display information about a TS
+ lchan Display information about a logical channel
+ e1_driver Display information about available E1 drivers
+ e1_line Display information about a E1 line
+ e1_timeslot Display information about a E1 timeslot
+...
+OsmoBTS> show bts ?
+ [<0-255>] BTS Number
+ <0-255> BTS Number
+OsmoBTS> show bts 0 ?
+ gprs GPRS/EGPRS configuration
+ <cr>
+OsmoBTS> show trx ?
+ [<0-255>] BTS Number
+OsmoBTS> show trx 0 ?
+ [<0-255>] TRX Number
+OsmoBTS> show timeslot ?
+ [<0-255>] BTS Number
+OsmoBTS> show timeslot 0 ?
+ [<0-255>] TRX Number
+OsmoBTS> show timeslot 0 0 ?
+ [<0-7>] Timeslot Number
+OsmoBTS> show lchan ?
+ [<0-255>] BTS Number
+ summary Short summary
+OsmoBTS> show lchan 0 ?
+ [<0-255>] TRX Number
+OsmoBTS> show lchan 0 0 ?
+ [<0-7>] Timeslot Number
+OsmoBTS> show lchan 0 0 0 ?
+ [<0-7>] Logical Channel Number
+OsmoBTS> show lchan summary ?
+ [<0-255>] BTS Number
+OsmoBTS> show lchan summary 0 ?
+ [<0-255>] TRX Number
+OsmoBTS> show lchan summary 0 0 ?
+ [<0-7>] Timeslot Number
+OsmoBTS> show lchan summary 0 0 0 ?
+ [<0-7>] Logical Channel Number
+OsmoBTS> show e1_driver ?
+ <cr>
+OsmoBTS> show e1_line ?
+ [<0-255>] E1 Line Number
+OsmoBTS> show e1_line 0 ?
+ [stats] Include statistics
+OsmoBTS> show e1_timeslot ?
+ [<0-255>] E1 Line Number
+OsmoBTS> show e1_timeslot 0 ?
+ [<0-31>] E1 Timeslot Number
+
+OsmoBTS> enable
+OsmoBTS# list
+...
+ show bts [<0-255>]
+ show trx [<0-255>] [<0-255>]
+ show timeslot [<0-255>] [<0-255>] [<0-7>]
+ show lchan [<0-255>] [<0-255>] [<0-7>] [<0-7>]
+ show lchan summary [<0-255>] [<0-255>] [<0-7>] [<0-7>]
+ show bts <0-255> gprs
+...
+ bts <0-0> trx <0-255> ts <0-7> (lchan|shadow-lchan) <0-7> rtp jitter-buffer <0-10000>
+ test send-failure-event-report <0-255>
+ bts <0-255> c0-power-red <0-6>
+ show e1_driver
+ show e1_line [<0-255>] [stats]
+ show e1_timeslot [<0-255>] [<0-31>]
+...
+
+OsmoBTS# ?
+...
+ show Show running system information
+...
+
+OsmoBTS# show ?
+...
+ bts Display information about a BTS
+ trx Display information about a TRX
+ timeslot Display information about a TS
+ lchan Display information about a logical channel
+ e1_driver Display information about available E1 drivers
+ e1_line Display information about a E1 line
+ e1_timeslot Display information about a E1 timeslot
+...
+OsmoBTS# show bts ?
+ [<0-255>] BTS Number
+ <0-255> BTS Number
+OsmoBTS# show bts 0 ?
+ gprs GPRS/EGPRS configuration
+ <cr>
+OsmoBTS# show trx ?
+ [<0-255>] BTS Number
+OsmoBTS# show trx 0 ?
+ [<0-255>] TRX Number
+OsmoBTS# show timeslot ?
+ [<0-255>] BTS Number
+OsmoBTS# show timeslot 0 ?
+ [<0-255>] TRX Number
+OsmoBTS# show timeslot 0 0 ?
+ [<0-7>] Timeslot Number
+OsmoBTS# show lchan ?
+ [<0-255>] BTS Number
+ summary Short summary
+OsmoBTS# show lchan 0 ?
+ [<0-255>] TRX Number
+OsmoBTS# show lchan 0 0 ?
+ [<0-7>] Timeslot Number
+OsmoBTS# show lchan 0 0 0 ?
+ [<0-7>] Logical Channel Number
+OsmoBTS# show lchan summary ?
+ [<0-255>] BTS Number
+OsmoBTS# show lchan summary 0 ?
+ [<0-255>] TRX Number
+OsmoBTS# show lchan summary 0 0 ?
+ [<0-7>] Timeslot Number
+OsmoBTS# show lchan summary 0 0 0 ?
+ [<0-7>] Logical Channel Number
+OsmoBTS# show e1_driver ?
+ <cr>
+OsmoBTS# show e1_line ?
+ [<0-255>] E1 Line Number
+OsmoBTS# show e1_line 0 ?
+ [stats] Include statistics
+OsmoBTS# show e1_timeslot ?
+ [<0-255>] E1 Line Number
+OsmoBTS# show e1_timeslot 0 ?
+ [<0-31>] E1 Timeslot Number
+
+OsmoBTS# configure terminal
+OsmoBTS(config)# list
+...
+ bts BTS_NR
+...
+ phy <0-255>
+ e1_input
+...
+OsmoBTS(config)# ?
+...
+ bts Select a BTS to configure
+...
+ phy Select a PHY to configure
+ e1_input Configure E1/T1/J1 TDM input
+...
+OsmoBTS(config)# bts ?
+ BTS_NR BTS Number
+OsmoBTS(config)# phy ?
+ <0-255> PHY number
+
+OsmoBTS(config)# bts 0
+OsmoBTS(bts)# list
+...
+ ipa unit-id <0-65534> <0-255>
+ oml remote-ip A.B.C.D
+ no oml remote-ip A.B.C.D
+ rtp jitter-buffer <0-10000> [adaptive]
+ rtp port-range <1-65534> <1-65534>
+ rtp ip-dscp <0-63>
+ rtp socket-priority <0-255>
+ band (450|GSM450|480|GSM480|750|GSM750|810|GSM810|850|GSM850|900|GSM900|1800|DCS1800|1900|PCS1900)
+ description .TEXT
+ no description
+ paging queue-size <1-1024>
+ paging lifetime <0-60>
+ agch-queue-mgmt default
+ agch-queue-mgmt threshold <0-100> low <0-100> high <0-100000>
+ min-qual-rach <-100-100>
+ min-qual-norm <-100-100>
+ max-ber10k-rach <0-10000>
+ pcu-socket PATH
+ supp-meas-info toa256
+ no supp-meas-info toa256
+ smscb queue-max-length <1-60>
+ smscb queue-target-length <1-30>
+ smscb queue-hysteresis <0-30>
+ gsmtap-remote-host [HOSTNAME]
+ no gsmtap-remote-host
+ gsmtap-sapi (enable-all|disable-all)
+ gsmtap-sapi (bcch|ccch|rach|agch|pch|sdcch|tch/f|tch/h|pacch|pdtch|ptcch|cbch|sacch)
+ no gsmtap-sapi (bcch|ccch|rach|agch|pch|sdcch|tch/f|tch/h|pacch|pdtch|ptcch|cbch|sacch)
+ trx <0-254>
+...
+OsmoBTS(bts)# ?
+...
+ ipa ip.access RSL commands
+ oml OML Parameters
+ no Negate a command or set its defaults
+ rtp RTP parameters
+ band Set the frequency band of this BTS
+ description Save human-readable description of the object
+ paging Paging related parameters
+ agch-queue-mgmt AGCH queue mgmt
+ min-qual-rach Set the minimum link quality level of Access Bursts to be accepted
+ min-qual-norm Set the minimum link quality level of Normal Bursts to be accepted
+ max-ber10k-rach Set the maximum BER for valid RACH requests
+ pcu-socket Configure the PCU socket file/path name
+ supp-meas-info Configure the RSL Supplementary Measurement Info
+ smscb SMSCB (SMS Cell Broadcast) / CBCH configuration
+ gsmtap-remote-host Enable GSMTAP Um logging (see also 'gsmtap-sapi')
+ gsmtap-sapi Enable/disable sending of UL/DL messages over GSMTAP
+ trx Select a TRX to configure
+...
+OsmoBTS(bts)# trx 0
+OsmoBTS(trx)# list
+...
+ user-gain <-100000-100000> (dB|mdB)
+ power-ramp max-initial <-10000-100000> (dBm|mdBm)
+ power-ramp step-size <1-100000> (dB|mdB)
+ power-ramp step-interval <1-100>
+ ms-power-control (dsp|osmo)
+ phy <0-255> instance <0-255>
+...
+OsmoBTS(trx)# ?
+...
+ user-gain Inform BTS about additional, user-provided gain or attenuation at TRX output
+ power-ramp Power-Ramp settings
+ ms-power-control Mobile Station Power Level Control
+ phy Configure PHY Link+Instance for this TRX
+...