Replace suites dyn_ts_ipa* and voice using scenario modifiers

Now that we support modifiers in scenario files, we don't need to
duplicate tests and testsuites to dynamically set trx configuration at
run time. It can be done more easily with scenario modifiers.

Change-Id: I80c441bb5b98d5d2e95d4c6ae1efab3e5f3c40d9
diff --git a/example/default-suites.conf b/example/default-suites.conf
index fa95daa..7ff8470 100644
--- a/example/default-suites.conf
+++ b/example/default-suites.conf
@@ -2,45 +2,59 @@
 - aoip_sms:sysmo
 - ussd:sysmo
 - aoip_ussd:sysmo
-- voice:sysmo
-- dyn_ts_ipa:sysmo
-- dyn_ts_osmo:sysmo
+- voice:sysmo+mod-bts0-ts-tchf
+- voice:sysmo+mod-bts0-ts-tchh
+- voice:sysmo+mod-bts0-dynts-ipa
+- voice:sysmo+mod-bts0-dynts-osmo
 - gprs:sysmo
+- gprs:sysmo+mod-bts0-dynts-ipa
+- gprs:sysmo+mod-bts0-dynts-osmo
 - sms:trx-b200
 - aoip_sms:trx-b200
 - ussd:trx-b200
 - aoip_ussd:trx-b200
-- voice:trx-b200
-- dyn_ts_ipa:trx-b200
-- dyn_ts_osmo:trx-b200
+- voice:trx-b200+mod-bts0-ts-tchf
+- voice:trx-b200+mod-bts0-ts-tchh
+- voice:trx-b200+mod-bts0-dynts-ipa
+- voice:trx-b200+mod-bts0-dynts-osmo
 - gprs:trx-b200
+- gprs:trx-b200+mod-bts0-dynts-ipa
+- gprs:trx-b200+mod-bts0-dynts-osmo
 - sms:trx-sysmocell5000
 - aoip_sms:trx-sysmocell5000
 - ussd:trx-sysmocell5000
 - aoip_ussd:trx-sysmocell5000
-- voice:trx-sysmocell5000
-- dyn_ts_ipa:trx-sysmocell5000
-- dyn_ts_osmo:trx-sysmocell5000
+- voice:trx-sysmocell5000+mod-bts0-ts-tchf
+- voice:trx-sysmocell5000+mod-bts0-ts-tchh
+- voice:trx-sysmocell5000+mod-bts0-dynts-ipa
+- voice:trx-sysmocell5000+mod-bts0-dynts-osmo
 - gprs:trx-sysmocell5000
+- gprs:trx-sysmocell5000+mod-bts0-dynts-ipa
+- gprs:trx-sysmocell5000+mod-bts0-dynts-osmo
 - sms:octphy
 - aoip_sms:octphy
 - ussd:octphy
 - aoip_ussd:octphy
-- voice:octphy
+- voice:octphy+mod-bts0-ts-tchf
+- voice:octphy+mod-bts0-ts-tchh
 - gprs:octphy
 - sms:nanobts
 - aoip_sms:nanobts+band-1900
 - ussd:nanobts+band-1900
 - aoip_ussd:nanobts+band-1900
-- voice:nanobts+band-1900
-- dyn_ts_ipa:nanobts+band-1900
+- voice:nanobts+band-1900+mod-bts0-ts-tchf
+- voice:nanobts+band-1900+mod-bts0-ts-tchh
+- voice:nanobts+band-1900+mod-bts0-dynts-ipa
 - gprs:nanobts+band-1900
+- gprs:nanobts+band-1900+mod-bts0-dynts-ipa
 - aoip_sms:nanobts+band-900
 - ussd:nanobts+band-900
 - aoip_ussd:nanobts+band-900
-- voice:nanobts+band-900
-- dyn_ts_ipa:nanobts+band-900
+- voice:nanobts+band-900+mod-bts0-ts-tchf
+- voice:nanobts+band-900+mod-bts0-ts-tchh
+- voice:nanobts+band-900+mod-bts0-dynts-ipa
 - gprs:nanobts+band-900
+- gprs:nanobts+band-900+mod-bts0-dynts-ipa
 - smpp
 - aoip_smpp
 - aoip_encryption
diff --git a/example/scenarios/mod-bts0-dynts-ipa.conf b/example/scenarios/mod-bts0-dynts-ipa.conf
new file mode 100644
index 0000000..fcad2c7
--- /dev/null
+++ b/example/scenarios/mod-bts0-dynts-ipa.conf
@@ -0,0 +1,13 @@
+modifiers:
+  bts:
+  - num_trx: 1
+    trx_list:
+    - timeslot_list:
+      - phys_chan_config: 'CCCH+SDCCH4'
+      - phys_chan_config: 'SDCCH8'
+      - phys_chan_config: 'TCH/F_PDCH'
+      - phys_chan_config: 'TCH/F_PDCH'
+      - phys_chan_config: 'TCH/F_PDCH'
+      - phys_chan_config: 'TCH/F_PDCH'
+      - phys_chan_config: 'TCH/F_PDCH'
+      - phys_chan_config: 'TCH/F_PDCH'
diff --git a/example/scenarios/mod-bts0-dynts-osmo.conf b/example/scenarios/mod-bts0-dynts-osmo.conf
new file mode 100644
index 0000000..26345bd
--- /dev/null
+++ b/example/scenarios/mod-bts0-dynts-osmo.conf
@@ -0,0 +1,13 @@
+modifiers:
+  bts:
+  - num_trx: 1
+    trx_list:
+    - timeslot_list:
+      - phys_chan_config: 'CCCH+SDCCH4'
+      - phys_chan_config: 'SDCCH8'
+      - phys_chan_config: 'TCH/F_TCH/H_PDCH'
+      - phys_chan_config: 'TCH/F_TCH/H_PDCH'
+      - phys_chan_config: 'TCH/F_TCH/H_PDCH'
+      - phys_chan_config: 'TCH/F_TCH/H_PDCH'
+      - phys_chan_config: 'TCH/F_TCH/H_PDCH'
+      - phys_chan_config: 'TCH/F_TCH/H_PDCH'
diff --git a/example/scenarios/mod-bts0-ts-tchf.conf b/example/scenarios/mod-bts0-ts-tchf.conf
new file mode 100644
index 0000000..527b620
--- /dev/null
+++ b/example/scenarios/mod-bts0-ts-tchf.conf
@@ -0,0 +1,13 @@
+modifiers:
+  bts:
+  - num_trx: 1
+    trx_list:
+    - timeslot_list:
+      - phys_chan_config: 'CCCH+SDCCH4'
+      - phys_chan_config: 'SDCCH8'
+      - phys_chan_config: 'TCH/F'
+      - phys_chan_config: 'TCH/F'
+      - phys_chan_config: 'TCH/F'
+      - phys_chan_config: 'TCH/F'
+      - phys_chan_config: 'TCH/F'
+      - phys_chan_config: 'TCH/F'
diff --git a/example/scenarios/mod-bts0-ts-tchh.conf b/example/scenarios/mod-bts0-ts-tchh.conf
new file mode 100644
index 0000000..0709bc4
--- /dev/null
+++ b/example/scenarios/mod-bts0-ts-tchh.conf
@@ -0,0 +1,13 @@
+modifiers:
+  bts:
+  - num_trx: 1
+    trx_list:
+    - timeslot_list:
+      - phys_chan_config: 'CCCH+SDCCH4'
+      - phys_chan_config: 'SDCCH8'
+      - phys_chan_config: 'TCH/H'
+      - phys_chan_config: 'TCH/H'
+      - phys_chan_config: 'TCH/H'
+      - phys_chan_config: 'TCH/H'
+      - phys_chan_config: 'TCH/H'
+      - phys_chan_config: 'TCH/H'
diff --git a/suites/dyn_ts_ipa/lib/testlib.py b/suites/dyn_ts_ipa/lib/testlib.py
deleted file mode 100755
index 28a4975..0000000
--- a/suites/dyn_ts_ipa/lib/testlib.py
+++ /dev/null
@@ -1,67 +0,0 @@
-#!/usr/bin/env python3
-from osmo_gsm_tester.testenv import *
-
-def call_test_setup_run(bts_setup_cb=None, gprs_enable=True):
-    hlr = suite.hlr()
-    bts = suite.bts()
-    mgw_msc = suite.mgw()
-    mgw_bsc = suite.mgw()
-    stp = suite.stp()
-    msc = suite.msc(hlr, mgw_msc, stp)
-    bsc = suite.bsc(msc, mgw_bsc, stp)
-    ms_mo = suite.modem()
-    ms_mt = suite.modem()
-
-    if bts_setup_cb is not None:
-        bts_setup_cb(bts)
-
-    if gprs_enable:
-        ggsn = suite.ggsn()
-        sgsn = suite.sgsn(hlr, ggsn)
-        sgsn.bts_add(bts)
-        ggsn.start()
-        sgsn.start()
-
-    hlr.start()
-    stp.start()
-    msc.start()
-    mgw_msc.start()
-    mgw_bsc.start()
-
-    bsc.bts_add(bts)
-    bsc.start()
-
-    bts.start()
-    wait(bsc.bts_is_connected, bts)
-
-    hlr.subscriber_add(ms_mo)
-    hlr.subscriber_add(ms_mt)
-
-    ms_mo.connect(msc.mcc_mnc())
-    ms_mt.connect(msc.mcc_mnc())
-
-    ms_mo.log_info()
-    ms_mt.log_info()
-
-    print('waiting for modems to attach...')
-    wait(ms_mo.is_connected, msc.mcc_mnc())
-    wait(ms_mt.is_connected, msc.mcc_mnc())
-    wait(msc.subscriber_attached, ms_mo, ms_mt)
-
-    assert len(ms_mo.call_id_list()) == 0 and len(ms_mt.call_id_list()) == 0
-    mo_cid = ms_mo.call_dial(ms_mt)
-    mt_cid = ms_mt.call_wait_incoming(ms_mo)
-    print('dial success')
-
-    assert not ms_mo.call_is_active(mo_cid) and not ms_mt.call_is_active(mt_cid)
-    ms_mt.call_answer(mt_cid)
-    wait(ms_mo.call_is_active, mo_cid)
-    wait(ms_mt.call_is_active, mt_cid)
-    print('answer success, call established and ongoing')
-
-    sleep(5) # maintain the call active for 5 seconds
-
-    assert ms_mo.call_is_active(mo_cid) and ms_mt.call_is_active(mt_cid)
-    ms_mt.call_hangup(mt_cid)
-    wait(lambda: len(ms_mo.call_id_list()) == 0 and len(ms_mt.call_id_list()) == 0)
-    print('hangup success')
diff --git a/suites/dyn_ts_ipa/mo_mt_call_dyn_ipa.py b/suites/dyn_ts_ipa/mo_mt_call_dyn_ipa.py
deleted file mode 100755
index 4fe4e46..0000000
--- a/suites/dyn_ts_ipa/mo_mt_call_dyn_ipa.py
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/usr/bin/env python3
-from osmo_gsm_tester.testenv import *
-
-import testlib
-suite.test_import_modules_register_for_cleanup(testlib)
-from testlib import call_test_setup_run
-
-def my_bts_setup(bts):
-    bts.set_num_trx(1)
-    bts.set_trx_phy_channel(0, 0, 'CCCH+SDCCH4')
-    bts.set_trx_phy_channel(0, 1, 'SDCCH8')
-    bts.set_trx_phy_channel(0, 2, 'TCH/F_PDCH')
-    bts.set_trx_phy_channel(0, 3, 'TCH/F_PDCH')
-    bts.set_trx_phy_channel(0, 4, 'TCH/F_PDCH')
-    bts.set_trx_phy_channel(0, 5, 'TCH/F_PDCH')
-    bts.set_trx_phy_channel(0, 6, 'TCH/F_PDCH')
-    bts.set_trx_phy_channel(0, 7, 'PDCH')
-
-call_test_setup_run(bts_setup_cb=my_bts_setup, gprs_enable=True)
diff --git a/suites/dyn_ts_ipa/mo_mt_call_dyn_ipa_no_gprs.py b/suites/dyn_ts_ipa/mo_mt_call_dyn_ipa_no_gprs.py
deleted file mode 100755
index c1349ae..0000000
--- a/suites/dyn_ts_ipa/mo_mt_call_dyn_ipa_no_gprs.py
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/usr/bin/env python3
-from osmo_gsm_tester.testenv import *
-
-import testlib
-suite.test_import_modules_register_for_cleanup(testlib)
-from testlib import call_test_setup_run
-
-def my_bts_setup(bts):
-    bts.set_num_trx(1)
-    bts.set_trx_phy_channel(0, 0, 'CCCH+SDCCH4')
-    bts.set_trx_phy_channel(0, 1, 'SDCCH8')
-    bts.set_trx_phy_channel(0, 2, 'TCH/F_PDCH')
-    bts.set_trx_phy_channel(0, 3, 'TCH/F_PDCH')
-    bts.set_trx_phy_channel(0, 4, 'TCH/F_PDCH')
-    bts.set_trx_phy_channel(0, 5, 'TCH/F_PDCH')
-    bts.set_trx_phy_channel(0, 6, 'TCH/F_PDCH')
-    bts.set_trx_phy_channel(0, 7, 'TCH/F_PDCH')
-
-# Check that dynamic timeslots work fine with gprs disabled.
-
-call_test_setup_run(bts_setup_cb=my_bts_setup, gprs_enable=False)
diff --git a/suites/dyn_ts_ipa/suite.conf b/suites/dyn_ts_ipa/suite.conf
deleted file mode 100644
index 4ac2436..0000000
--- a/suites/dyn_ts_ipa/suite.conf
+++ /dev/null
@@ -1,9 +0,0 @@
-resources:
-  ip_address:
-  - times: 8 # msc, bsc, hlr, stp, mgw*2, sgsn, ggsn
-  bts:
-  - times: 1
-  modem:
-  - times: 2
-    features:
-    - voice
diff --git a/suites/dyn_ts_osmo/lib/testlib.py b/suites/dyn_ts_osmo/lib/testlib.py
deleted file mode 120000
index 8f0bc5a..0000000
--- a/suites/dyn_ts_osmo/lib/testlib.py
+++ /dev/null
@@ -1 +0,0 @@
-../../dyn_ts_ipa/lib/testlib.py
\ No newline at end of file
diff --git a/suites/dyn_ts_osmo/mo_mt_call_dyn_osmo.py b/suites/dyn_ts_osmo/mo_mt_call_dyn_osmo.py
deleted file mode 100755
index b9b7935..0000000
--- a/suites/dyn_ts_osmo/mo_mt_call_dyn_osmo.py
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/usr/bin/env python3
-from osmo_gsm_tester.testenv import *
-
-import testlib
-suite.test_import_modules_register_for_cleanup(testlib)
-from testlib import call_test_setup_run
-
-def my_bts_setup(bts):
-    bts.set_num_trx(1)
-    bts.set_trx_phy_channel(0, 0, 'CCCH+SDCCH4')
-    bts.set_trx_phy_channel(0, 1, 'SDCCH8')
-    bts.set_trx_phy_channel(0, 2, 'TCH/F_TCH/H_PDCH')
-    bts.set_trx_phy_channel(0, 3, 'TCH/F_TCH/H_PDCH')
-    bts.set_trx_phy_channel(0, 4, 'TCH/F_TCH/H_PDCH')
-    bts.set_trx_phy_channel(0, 5, 'TCH/F_TCH/H_PDCH')
-    bts.set_trx_phy_channel(0, 6, 'TCH/F_TCH/H_PDCH')
-    bts.set_trx_phy_channel(0, 7, 'PDCH')
-
-call_test_setup_run(bts_setup_cb=my_bts_setup, gprs_enable=True)
diff --git a/suites/dyn_ts_osmo/mo_mt_call_dyn_osmo_no_gprs.py b/suites/dyn_ts_osmo/mo_mt_call_dyn_osmo_no_gprs.py
deleted file mode 100755
index d80d27a..0000000
--- a/suites/dyn_ts_osmo/mo_mt_call_dyn_osmo_no_gprs.py
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/usr/bin/env python3
-from osmo_gsm_tester.testenv import *
-
-import testlib
-suite.test_import_modules_register_for_cleanup(testlib)
-from testlib import call_test_setup_run
-
-def my_bts_setup(bts):
-    bts.set_num_trx(1)
-    bts.set_trx_phy_channel(0, 0, 'CCCH+SDCCH4')
-    bts.set_trx_phy_channel(0, 1, 'SDCCH8')
-    bts.set_trx_phy_channel(0, 2, 'TCH/F_TCH/H_PDCH')
-    bts.set_trx_phy_channel(0, 3, 'TCH/F_TCH/H_PDCH')
-    bts.set_trx_phy_channel(0, 4, 'TCH/F_TCH/H_PDCH')
-    bts.set_trx_phy_channel(0, 5, 'TCH/F_TCH/H_PDCH')
-    bts.set_trx_phy_channel(0, 6, 'TCH/F_TCH/H_PDCH')
-    bts.set_trx_phy_channel(0, 7, 'TCH/F_TCH/H_PDCH')
-
-# Check that dynamic timeslots work fine with gprs disabled.
-
-call_test_setup_run(bts_setup_cb=my_bts_setup, gprs_enable=False)
diff --git a/suites/dyn_ts_osmo/suite.conf b/suites/dyn_ts_osmo/suite.conf
deleted file mode 100644
index 4ac2436..0000000
--- a/suites/dyn_ts_osmo/suite.conf
+++ /dev/null
@@ -1,9 +0,0 @@
-resources:
-  ip_address:
-  - times: 8 # msc, bsc, hlr, stp, mgw*2, sgsn, ggsn
-  bts:
-  - times: 1
-  modem:
-  - times: 2
-    features:
-    - voice
diff --git a/suites/voice/lib/testlib.py b/suites/voice/lib/testlib.py
deleted file mode 100755
index f949809..0000000
--- a/suites/voice/lib/testlib.py
+++ /dev/null
@@ -1,60 +0,0 @@
-#!/usr/bin/env python3
-from osmo_gsm_tester.testenv import *
-
-def call_test_setup_run(bts_setup_cb=None):
-    hlr = suite.hlr()
-    bts = suite.bts()
-    mgw_msc = suite.mgw()
-    mgw_bsc = suite.mgw()
-    stp = suite.stp()
-    msc = suite.msc(hlr, mgw_msc, stp)
-    bsc = suite.bsc(msc, mgw_bsc, stp)
-    ms_mo = suite.modem()
-    ms_mt = suite.modem()
-
-    if bts_setup_cb is not None:
-        bts_setup_cb(bts)
-
-    hlr.start()
-    stp.start()
-    msc.start()
-    mgw_msc.start()
-    mgw_bsc.start()
-
-    bsc.bts_add(bts)
-    bsc.start()
-
-    bts.start()
-    wait(bsc.bts_is_connected, bts)
-
-    hlr.subscriber_add(ms_mo)
-    hlr.subscriber_add(ms_mt)
-
-    ms_mo.connect(msc.mcc_mnc())
-    ms_mt.connect(msc.mcc_mnc())
-
-    ms_mo.log_info()
-    ms_mt.log_info()
-
-    print('waiting for modems to attach...')
-    wait(ms_mo.is_connected, msc.mcc_mnc())
-    wait(ms_mt.is_connected, msc.mcc_mnc())
-    wait(msc.subscriber_attached, ms_mo, ms_mt)
-
-    assert len(ms_mo.call_id_list()) == 0 and len(ms_mt.call_id_list()) == 0
-    mo_cid = ms_mo.call_dial(ms_mt)
-    mt_cid = ms_mt.call_wait_incoming(ms_mo)
-    print('dial success')
-
-    assert not ms_mo.call_is_active(mo_cid) and not ms_mt.call_is_active(mt_cid)
-    ms_mt.call_answer(mt_cid)
-    wait(ms_mo.call_is_active, mo_cid)
-    wait(ms_mt.call_is_active, mt_cid)
-    print('answer success, call established and ongoing')
-
-    sleep(5) # maintain the call active for 5 seconds
-
-    assert ms_mo.call_is_active(mo_cid) and ms_mt.call_is_active(mt_cid)
-    ms_mt.call_hangup(mt_cid)
-    wait(lambda: len(ms_mo.call_id_list()) == 0 and len(ms_mt.call_id_list()) == 0)
-    print('hangup success')
diff --git a/suites/voice/mo_mt_call.py b/suites/voice/mo_mt_call.py
new file mode 100755
index 0000000..aeda80d
--- /dev/null
+++ b/suites/voice/mo_mt_call.py
@@ -0,0 +1,56 @@
+#!/usr/bin/env python3
+from osmo_gsm_tester.testenv import *
+
+hlr = suite.hlr()
+bts = suite.bts()
+mgw_msc = suite.mgw()
+mgw_bsc = suite.mgw()
+stp = suite.stp()
+msc = suite.msc(hlr, mgw_msc, stp)
+bsc = suite.bsc(msc, mgw_bsc, stp)
+ms_mo = suite.modem()
+ms_mt = suite.modem()
+
+hlr.start()
+stp.start()
+msc.start()
+mgw_msc.start()
+mgw_bsc.start()
+
+bsc.bts_add(bts)
+bsc.start()
+
+bts.start()
+wait(bsc.bts_is_connected, bts)
+
+hlr.subscriber_add(ms_mo)
+hlr.subscriber_add(ms_mt)
+
+ms_mo.connect(msc.mcc_mnc())
+ms_mt.connect(msc.mcc_mnc())
+
+ms_mo.log_info()
+ms_mt.log_info()
+
+print('waiting for modems to attach...')
+wait(ms_mo.is_connected, msc.mcc_mnc())
+wait(ms_mt.is_connected, msc.mcc_mnc())
+wait(msc.subscriber_attached, ms_mo, ms_mt)
+
+assert len(ms_mo.call_id_list()) == 0 and len(ms_mt.call_id_list()) == 0
+mo_cid = ms_mo.call_dial(ms_mt)
+mt_cid = ms_mt.call_wait_incoming(ms_mo)
+print('dial success')
+
+assert not ms_mo.call_is_active(mo_cid) and not ms_mt.call_is_active(mt_cid)
+ms_mt.call_answer(mt_cid)
+wait(ms_mo.call_is_active, mo_cid)
+wait(ms_mt.call_is_active, mt_cid)
+print('answer success, call established and ongoing')
+
+sleep(5) # maintain the call active for 5 seconds
+
+assert ms_mo.call_is_active(mo_cid) and ms_mt.call_is_active(mt_cid)
+ms_mt.call_hangup(mt_cid)
+wait(lambda: len(ms_mo.call_id_list()) == 0 and len(ms_mt.call_id_list()) == 0)
+print('hangup success')
diff --git a/suites/voice/mo_mt_call_tchf.py b/suites/voice/mo_mt_call_tchf.py
deleted file mode 100755
index af55dfd..0000000
--- a/suites/voice/mo_mt_call_tchf.py
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/usr/bin/env python3
-from osmo_gsm_tester.testenv import *
-
-import testlib
-suite.test_import_modules_register_for_cleanup(testlib)
-from testlib import call_test_setup_run
-
-def my_bts_setup(bts):
-    bts.set_num_trx(1)
-    bts.set_trx_phy_channel(0, 0, 'CCCH+SDCCH4')
-    bts.set_trx_phy_channel(0, 1, 'SDCCH8')
-    bts.set_trx_phy_channel(0, 2, 'TCH/F')
-    bts.set_trx_phy_channel(0, 3, 'TCH/F')
-    bts.set_trx_phy_channel(0, 4, 'TCH/F')
-    bts.set_trx_phy_channel(0, 5, 'TCH/F')
-    bts.set_trx_phy_channel(0, 6, 'TCH/F')
-    bts.set_trx_phy_channel(0, 7, 'TCH/F')
-
-call_test_setup_run(bts_setup_cb=my_bts_setup)
diff --git a/suites/voice/mo_mt_call_tchh.py b/suites/voice/mo_mt_call_tchh.py
deleted file mode 100755
index 43d0760..0000000
--- a/suites/voice/mo_mt_call_tchh.py
+++ /dev/null
@@ -1,19 +0,0 @@
-#!/usr/bin/env python3
-from osmo_gsm_tester.testenv import *
-
-import testlib
-suite.test_import_modules_register_for_cleanup(testlib)
-from testlib import call_test_setup_run
-
-def my_bts_setup(bts):
-    bts.set_num_trx(1)
-    bts.set_trx_phy_channel(0, 0, 'CCCH+SDCCH4')
-    bts.set_trx_phy_channel(0, 1, 'SDCCH8')
-    bts.set_trx_phy_channel(0, 2, 'TCH/H')
-    bts.set_trx_phy_channel(0, 3, 'TCH/H')
-    bts.set_trx_phy_channel(0, 4, 'TCH/H')
-    bts.set_trx_phy_channel(0, 5, 'TCH/H')
-    bts.set_trx_phy_channel(0, 6, 'TCH/H')
-    bts.set_trx_phy_channel(0, 7, 'TCH/H')
-
-call_test_setup_run(bts_setup_cb=my_bts_setup)