Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
slapos
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Labels
Merge Requests
104
Merge Requests
104
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Jobs
Commits
Open sidebar
nexedi
slapos
Commits
8c6a11d7
Commit
8c6a11d7
authored
Oct 07, 2022
by
Joanne Hugé
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ors-amarisoft: clean-up
parent
0bc84af5
Changes
13
Show whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
647 additions
and
817 deletions
+647
-817
software/ors-amarisoft/buildout.hash.cfg
software/ors-amarisoft/buildout.hash.cfg
+1
-1
software/ors-amarisoft/instance.cfg
software/ors-amarisoft/instance.cfg
+36
-36
software/ors-amarisoft/render-templates
software/ors-amarisoft/render-templates
+60
-120
software/ors-amarisoft/software-tdd1900.cfg
software/ors-amarisoft/software-tdd1900.cfg
+1
-1
software/ors-amarisoft/software-tdd2600.cfg
software/ors-amarisoft/software-tdd2600.cfg
+1
-1
software/ors-amarisoft/software-tdd3500.cfg
software/ors-amarisoft/software-tdd3500.cfg
+1
-1
software/ors-amarisoft/software-tdd3700.cfg
software/ors-amarisoft/software-tdd3700.cfg
+1
-1
software/ors-amarisoft/software.jinja2.cfg
software/ors-amarisoft/software.jinja2.cfg
+1
-1
software/ors-amarisoft/test/test.jinja2.py
software/ors-amarisoft/test/test.jinja2.py
+109
-131
software/ors-amarisoft/test/testTDD1900.py
software/ors-amarisoft/test/testTDD1900.py
+109
-131
software/ors-amarisoft/test/testTDD2600.py
software/ors-amarisoft/test/testTDD2600.py
+109
-131
software/ors-amarisoft/test/testTDD3500.py
software/ors-amarisoft/test/testTDD3500.py
+109
-131
software/ors-amarisoft/test/testTDD3700.py
software/ors-amarisoft/test/testTDD3700.py
+109
-131
No files found.
software/ors-amarisoft/buildout.hash.cfg
View file @
8c6a11d7
...
@@ -16,7 +16,7 @@
...
@@ -16,7 +16,7 @@
[template]
[template]
filename = instance.cfg
filename = instance.cfg
md5sum =
8b275dc35fdb169eca6b087bc32a9286
md5sum =
e72c0abf26cb451cef9e30d9fbfe9327
[template-lte-enb-epc]
[template-lte-enb-epc]
_update_hash_filename_ = instance-enb-epc.jinja2.cfg
_update_hash_filename_ = instance-enb-epc.jinja2.cfg
...
...
software/ors-amarisoft/instance.cfg
View file @
8c6a11d7
...
@@ -106,14 +106,14 @@ extra-context =
...
@@ -106,14 +106,14 @@ extra-context =
raw ltelogs_template ${ltelogs.jinja2.sh:target}
raw ltelogs_template ${ltelogs.jinja2.sh:target}
raw sdr_busy_promise ${sdr-busy-promise:target}
raw sdr_busy_promise ${sdr-busy-promise:target}
raw openssl_location ${openssl:location}
raw openssl_location ${openssl:location}
raw default_dl_earfcn ${
enb
:default-dl-earfcn}
raw default_dl_earfcn ${
default-params
:default-dl-earfcn}
raw default_lte_dl_freq ${
enb
:default-lte-dl-freq}
raw default_lte_dl_freq ${
default-params
:default-lte-dl-freq}
raw default_lte_band ${
enb
:default-lte-band}
raw default_lte_band ${
default-params
:default-lte-band}
raw default_lte_n_rb_dl ${
enb
:default-lte-n-rb-dl}
raw default_lte_n_rb_dl ${
default-params
:default-lte-n-rb-dl}
raw default_lte_tx_gain ${
enb
:default-lte-tx-gain}
raw default_lte_tx_gain ${
default-params
:default-lte-tx-gain}
raw default_lte_rx_gain ${
enb
:default-lte-rx-gain}
raw default_lte_rx_gain ${
default-params
:default-lte-rx-gain}
raw min_frequency ${
enb
:min-frequency}
raw min_frequency ${
default-params
:min-frequency}
raw max_frequency ${
enb
:max-frequency}
raw max_frequency ${
default-params
:max-frequency}
[dynamic-template-lte-gnb]
[dynamic-template-lte-gnb]
< = jinja2-template-base
< = jinja2-template-base
...
@@ -127,15 +127,15 @@ extra-context =
...
@@ -127,15 +127,15 @@ extra-context =
raw ltelogs_template ${ltelogs.jinja2.sh:target}
raw ltelogs_template ${ltelogs.jinja2.sh:target}
raw sdr_busy_promise ${sdr-busy-promise:target}
raw sdr_busy_promise ${sdr-busy-promise:target}
raw openssl_location ${openssl:location}
raw openssl_location ${openssl:location}
raw default_dl_nr_arfcn ${
enb
:default-dl-nr-arfcn}
raw default_dl_nr_arfcn ${
default-params
:default-dl-nr-arfcn}
raw default_nr_band ${
enb
:default-nr-band}
raw default_nr_band ${
default-params
:default-nr-band}
raw default_nr_dl_freq ${
enb
:default-nr-dl-freq}
raw default_nr_dl_freq ${
default-params
:default-nr-dl-freq}
raw default_nr_bandwidth ${
enb
:default-nr-bandwidth}
raw default_nr_bandwidth ${
default-params
:default-nr-bandwidth}
raw default_nr_tx_gain ${
enb
:default-nr-tx-gain}
raw default_nr_tx_gain ${
default-params
:default-nr-tx-gain}
raw default_nr_rx_gain ${
enb
:default-nr-rx-gain}
raw default_nr_rx_gain ${
default-params
:default-nr-rx-gain}
raw default_nr_ssb_pos_bitmap ${
enb
:default-nr-ssb-pos-bitmap}
raw default_nr_ssb_pos_bitmap ${
default-params
:default-nr-ssb-pos-bitmap}
raw min_frequency ${
enb
:min-frequency}
raw min_frequency ${
default-params
:min-frequency}
raw max_frequency ${
enb
:max-frequency}
raw max_frequency ${
default-params
:max-frequency}
[dynamic-template-lte-mme]
[dynamic-template-lte-mme]
< = jinja2-template-base
< = jinja2-template-base
...
@@ -167,15 +167,15 @@ extra-context =
...
@@ -167,15 +167,15 @@ extra-context =
raw ltelogs_template ${ltelogs.jinja2.sh:target}
raw ltelogs_template ${ltelogs.jinja2.sh:target}
raw sdr_busy_promise ${sdr-busy-promise:target}
raw sdr_busy_promise ${sdr-busy-promise:target}
raw openssl_location ${openssl:location}
raw openssl_location ${openssl:location}
raw default_dl_earfcn ${
enb
:default-dl-earfcn}
raw default_dl_earfcn ${
default-params
:default-dl-earfcn}
raw default_lte_dl_freq ${
enb
:default-lte-dl-freq}
raw default_lte_dl_freq ${
default-params
:default-lte-dl-freq}
raw default_lte_n_rb_dl ${
enb
:default-lte-n-rb-dl}
raw default_lte_n_rb_dl ${
default-params
:default-lte-n-rb-dl}
raw default_lte_tx_gain ${
enb
:default-lte-tx-gain}
raw default_lte_tx_gain ${
default-params
:default-lte-tx-gain}
raw default_lte_rx_gain ${
enb
:default-lte-rx-gain}
raw default_lte_rx_gain ${
default-params
:default-lte-rx-gain}
raw default_n_antenna_dl ${
enb
:default-n-antenna-dl}
raw default_n_antenna_dl ${
default-params
:default-n-antenna-dl}
raw default_n_antenna_ul ${
enb
:default-n-antenna-ul}
raw default_n_antenna_ul ${
default-params
:default-n-antenna-ul}
raw default_lte_imsi ${
enb
:default-lte-imsi}
raw default_lte_imsi ${
default-params
:default-lte-imsi}
raw default_lte_k ${
enb
:default-lte-k}
raw default_lte_k ${
default-params
:default-lte-k}
[dynamic-template-lte-ue-nr]
[dynamic-template-lte-ue-nr]
< = jinja2-template-base
< = jinja2-template-base
...
@@ -190,16 +190,16 @@ extra-context =
...
@@ -190,16 +190,16 @@ extra-context =
raw ltelogs_template ${ltelogs.jinja2.sh:target}
raw ltelogs_template ${ltelogs.jinja2.sh:target}
raw sdr_busy_promise ${sdr-busy-promise:target}
raw sdr_busy_promise ${sdr-busy-promise:target}
raw openssl_location ${openssl:location}
raw openssl_location ${openssl:location}
raw default_dl_nr_arfcn ${
enb
:default-dl-nr-arfcn}
raw default_dl_nr_arfcn ${
default-params
:default-dl-nr-arfcn}
raw default_nr_band ${
enb
:default-nr-band}
raw default_nr_band ${
default-params
:default-nr-band}
raw default_nr_bandwidth ${
enb
:default-nr-bandwidth}
raw default_nr_bandwidth ${
default-params
:default-nr-bandwidth}
raw default_nr_tx_gain ${
enb
:default-nr-tx-gain}
raw default_nr_tx_gain ${
default-params
:default-nr-tx-gain}
raw default_nr_rx_gain ${
enb
:default-nr-rx-gain}
raw default_nr_rx_gain ${
default-params
:default-nr-rx-gain}
raw default_n_antenna_dl ${
enb
:default-n-antenna-dl}
raw default_n_antenna_dl ${
default-params
:default-n-antenna-dl}
raw default_n_antenna_ul ${
enb
:default-n-antenna-ul}
raw default_n_antenna_ul ${
default-params
:default-n-antenna-ul}
raw default_nr_imsi ${
enb
:default-nr-imsi}
raw default_nr_imsi ${
default-params
:default-nr-imsi}
raw default_nr_k ${
enb
:default-nr-k}
raw default_nr_k ${
default-params
:default-nr-k}
raw default_ssb_nr_arfcn ${
enb
:default-ssb-nr-arfcn}
raw default_ssb_nr_arfcn ${
default-params
:default-ssb-nr-arfcn}
[ue-db-config]
[ue-db-config]
recipe = slapos.recipe.template:jinja2
recipe = slapos.recipe.template:jinja2
...
...
software/ors-amarisoft/render-templates
View file @
8c6a11d7
...
@@ -3,138 +3,78 @@
...
@@ -3,138 +3,78 @@
from
jinja2
import
Template
from
jinja2
import
Template
import
os
import
os
# Values: 6 (1.4 MHz), 15 (3MHz), 25 (5MHz), 50 (10MHz), 75 (15MHz), 100 (20MHz)
LTE_N_RB_DL
=
100
LTE_TX_GAIN
=
78
LTE_RX_GAIN
=
40
LTE_IMSI
=
"001010123456789"
LTE_K
=
"00112233445566778899aabbccddeeff"
NR_BANDWIDTH
=
40
NR_TX_GAIN
=
78
NR_RX_GAIN
=
40
NR_IMSI
=
"001010123456789"
NR_K
=
"00112233445566778899aabbccddeeff"
N_ANTENNA_DL
=
2
N_ANTENNA_UL
=
2
global_context
=
{
global_context
=
{
'generated_file_message'
:
"This file was generated using a jinja2 template and the render-templates script, don't modify directly."
'generated_file_message'
:
"This file was generated using a jinja2 template and the render-templates script, don't modify directly."
}
}
rf_mode_context_list
=
[
rf_mode_context_list
=
[
{
{
'rf_mode'
:
'tdd1900'
,
'rf_mode'
:
'tdd1900'
,
'default_dl_earfcn'
:
38350
,
'default_dl_earfcn'
:
38350
,
'default_lte_dl_freq'
:
1890.0
,
'default_lte_dl_freq'
:
1890.0
,
'default_lte_band'
:
39
,
'default_lte_band'
:
39
,
'default_dl_nr_arfcn'
:
378000
,
'default_lte_n_rb_dl'
:
LTE_N_RB_DL
,
'default_nr_band'
:
39
,
'default_lte_tx_gain'
:
LTE_TX_GAIN
,
'default_nr_dl_freq'
:
1890.0
,
'default_lte_rx_gain'
:
LTE_RX_GAIN
,
'default_nr_ssb_pos_bitmap'
:
"1000"
,
'default_lte_imsi'
:
LTE_IMSI
,
'default_ssb_nr_arfcn'
:
377790
,
'default_lte_k'
:
LTE_K
,
'min_frequency'
:
1880.0
,
'max_frequency'
:
1920
,
'default_dl_nr_arfcn'
:
378000
,
'default_nr_band'
:
39
,
'default_nr_dl_freq'
:
1890.0
,
'default_nr_bandwidth'
:
NR_BANDWIDTH
,
'default_nr_tx_gain'
:
NR_TX_GAIN
,
'default_nr_rx_gain'
:
NR_RX_GAIN
,
'default_nr_ssb_pos_bitmap'
:
"1000"
,
'default_ssb_nr_arfcn'
:
377790
,
'default_nr_imsi'
:
NR_IMSI
,
'default_nr_k'
:
NR_K
,
'min_frequency'
:
1880.0
,
'max_frequency'
:
1920
,
'default_n_antenna_dl'
:
N_ANTENNA_DL
,
'default_n_antenna_ul'
:
N_ANTENNA_UL
,
},
{
},
{
'rf_mode'
:
'tdd2600'
,
'rf_mode'
:
'tdd2600'
,
'default_dl_earfcn'
:
38050
,
'default_dl_earfcn'
:
38050
,
'default_lte_dl_freq'
:
2600.0
,
'default_lte_dl_freq'
:
2600.0
,
'default_lte_band'
:
38
,
'default_lte_band'
:
38
,
'default_dl_nr_arfcn'
:
520000
,
'default_lte_n_rb_dl'
:
LTE_N_RB_DL
,
'default_nr_band'
:
38
,
'default_lte_tx_gain'
:
LTE_TX_GAIN
,
'default_nr_dl_freq'
:
2600.0
,
'default_lte_rx_gain'
:
LTE_RX_GAIN
,
'default_nr_ssb_pos_bitmap'
:
"10000000"
,
'default_lte_imsi'
:
LTE_IMSI
,
'default_ssb_nr_arfcn'
:
517930
,
'default_lte_k'
:
LTE_K
,
'min_frequency'
:
2570
,
'max_frequency'
:
2620
,
'default_dl_nr_arfcn'
:
520000
,
'default_nr_band'
:
38
,
'default_nr_dl_freq'
:
2600.0
,
'default_nr_bandwidth'
:
NR_BANDWIDTH
,
'default_nr_tx_gain'
:
NR_TX_GAIN
,
'default_nr_rx_gain'
:
NR_RX_GAIN
,
'default_nr_ssb_pos_bitmap'
:
"10000000"
,
'default_ssb_nr_arfcn'
:
517930
,
'default_nr_imsi'
:
NR_IMSI
,
'default_nr_k'
:
NR_K
,
'min_frequency'
:
2570
,
'max_frequency'
:
2620
,
'default_n_antenna_dl'
:
N_ANTENNA_DL
,
'default_n_antenna_ul'
:
N_ANTENNA_UL
,
},
{
},
{
'rf_mode'
:
'tdd3500'
,
'rf_mode'
:
'tdd3500'
,
'default_dl_earfcn'
:
42590
,
'default_dl_earfcn'
:
42590
,
'default_lte_dl_freq'
:
3500.0
,
'default_lte_dl_freq'
:
3500.0
,
'default_lte_band'
:
42
,
'default_lte_band'
:
42
,
'default_dl_nr_arfcn'
:
632628
,
'default_lte_n_rb_dl'
:
LTE_N_RB_DL
,
'default_nr_band'
:
78
,
'default_lte_tx_gain'
:
LTE_TX_GAIN
,
'default_nr_dl_freq'
:
3489.42
,
'default_lte_rx_gain'
:
LTE_RX_GAIN
,
'default_nr_ssb_pos_bitmap'
:
"10000000"
,
'default_lte_imsi'
:
LTE_IMSI
,
'default_ssb_nr_arfcn'
:
632544
,
'default_lte_k'
:
LTE_K
,
'min_frequency'
:
3400
,
'max_frequency'
:
3600
,
'default_dl_nr_arfcn'
:
632628
,
'default_nr_band'
:
78
,
'default_nr_dl_freq'
:
3489.42
,
'default_nr_bandwidth'
:
NR_BANDWIDTH
,
'default_nr_tx_gain'
:
NR_TX_GAIN
,
'default_nr_rx_gain'
:
NR_RX_GAIN
,
'default_nr_ssb_pos_bitmap'
:
"10000000"
,
'default_ssb_nr_arfcn'
:
632544
,
'default_nr_imsi'
:
NR_IMSI
,
'default_nr_k'
:
NR_K
,
'min_frequency'
:
3400
,
'max_frequency'
:
3600
,
'default_n_antenna_dl'
:
N_ANTENNA_DL
,
'default_n_antenna_ul'
:
N_ANTENNA_UL
,
},
{
},
{
'rf_mode'
:
'tdd3700'
,
'rf_mode'
:
'tdd3700'
,
'default_dl_earfcn'
:
44590
,
'default_dl_earfcn'
:
44590
,
'default_lte_dl_freq'
:
3700.0
,
'default_lte_dl_freq'
:
3700.0
,
'default_lte_band'
:
43
,
'default_lte_band'
:
43
,
'default_dl_nr_arfcn'
:
646666
,
'default_lte_n_rb_dl'
:
LTE_N_RB_DL
,
'default_nr_band'
:
78
,
'default_lte_tx_gain'
:
LTE_TX_GAIN
,
'default_nr_dl_freq'
:
3699.99
,
'default_lte_rx_gain'
:
LTE_RX_GAIN
,
'default_nr_ssb_pos_bitmap'
:
"10000000"
,
'default_lte_imsi'
:
LTE_IMSI
,
'default_ssb_nr_arfcn'
:
646656
,
'default_lte_k'
:
LTE_K
,
'min_frequency'
:
3600
,
'max_frequency'
:
3800
,
'default_dl_nr_arfcn'
:
646666
,
'default_nr_band'
:
78
,
'default_nr_dl_freq'
:
3699.99
,
'default_nr_bandwidth'
:
NR_BANDWIDTH
,
'default_nr_tx_gain'
:
NR_TX_GAIN
,
'default_nr_rx_gain'
:
NR_RX_GAIN
,
'default_nr_ssb_pos_bitmap'
:
"10000000"
,
'default_ssb_nr_arfcn'
:
646656
,
'default_nr_imsi'
:
NR_IMSI
,
'default_nr_k'
:
NR_K
,
'min_frequency'
:
3600
,
'max_frequency'
:
3800
,
'default_n_antenna_dl'
:
N_ANTENNA_DL
,
'default_n_antenna_ul'
:
N_ANTENNA_UL
,
}
}
]
]
for
i
in
range
(
4
):
rf_mode_context_list
[
i
].
update
({
'default_lte_n_rb_dl'
:
100
,
'default_lte_tx_gain'
:
78
,
'default_lte_rx_gain'
:
40
,
'default_lte_imsi'
:
"001010123456789"
,
'default_lte_k'
:
"00112233445566778899aabbccddeeff"
,
'default_nr_bandwidth'
:
40
,
'default_nr_tx_gain'
:
78
,
'default_nr_rx_gain'
:
40
,
'default_nr_imsi'
:
"001010123456789"
,
'default_nr_k'
:
"00112233445566778899aabbccddeeff"
,
'default_n_antenna_dl'
:
2
,
'default_n_antenna_ul'
:
2
,
})
with
open
(
'software.cfg.json.jinja2'
,
'r'
)
as
f
:
with
open
(
'software.cfg.json.jinja2'
,
'r'
)
as
f
:
software_json_template
=
Template
(
f
.
read
())
software_json_template
=
Template
(
f
.
read
())
with
open
(
'instance-enb-input-schema.json.jinja2'
,
'r'
)
as
f
:
with
open
(
'instance-enb-input-schema.json.jinja2'
,
'r'
)
as
f
:
...
...
software/ors-amarisoft/software-tdd1900.cfg
View file @
8c6a11d7
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
extends =
extends =
software.cfg
software.cfg
[
enb
]
[
default-params
]
default-dl-earfcn = 38350
default-dl-earfcn = 38350
default-lte-dl-freq = 1890.0
default-lte-dl-freq = 1890.0
default-lte-band = 39
default-lte-band = 39
...
...
software/ors-amarisoft/software-tdd2600.cfg
View file @
8c6a11d7
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
extends =
extends =
software.cfg
software.cfg
[
enb
]
[
default-params
]
default-dl-earfcn = 38050
default-dl-earfcn = 38050
default-lte-dl-freq = 2600.0
default-lte-dl-freq = 2600.0
default-lte-band = 38
default-lte-band = 38
...
...
software/ors-amarisoft/software-tdd3500.cfg
View file @
8c6a11d7
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
extends =
extends =
software.cfg
software.cfg
[
enb
]
[
default-params
]
default-dl-earfcn = 42590
default-dl-earfcn = 42590
default-lte-dl-freq = 3500.0
default-lte-dl-freq = 3500.0
default-lte-band = 42
default-lte-band = 42
...
...
software/ors-amarisoft/software-tdd3700.cfg
View file @
8c6a11d7
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
extends =
extends =
software.cfg
software.cfg
[
enb
]
[
default-params
]
default-dl-earfcn = 44590
default-dl-earfcn = 44590
default-lte-dl-freq = 3700.0
default-lte-dl-freq = 3700.0
default-lte-band = 43
default-lte-band = 43
...
...
software/ors-amarisoft/software.jinja2.cfg
View file @
8c6a11d7
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
extends =
extends =
software.cfg
software.cfg
[
enb
]
[
default-params
]
default-dl-earfcn = {{ default_dl_earfcn }}
default-dl-earfcn = {{ default_dl_earfcn }}
default-lte-dl-freq = {{ default_lte_dl_freq }}
default-lte-dl-freq = {{ default_lte_dl_freq }}
default-lte-band = {{ default_lte_band }}
default-lte-band = {{ default_lte_band }}
...
...
software/ors-amarisoft/test/test.jinja2.py
View file @
8c6a11d7
...
@@ -36,59 +36,68 @@ setUpModule, ORSTestCase = makeModuleSetUpAndTestCaseClass(
...
@@ -36,59 +36,68 @@ setUpModule, ORSTestCase = makeModuleSetUpAndTestCaseClass(
os
.
path
.
abspath
(
os
.
path
.
abspath
(
os
.
path
.
join
(
os
.
path
.
dirname
(
__file__
),
'..'
,
'software-{{ rf_mode }}.cfg'
)))
os
.
path
.
join
(
os
.
path
.
dirname
(
__file__
),
'..'
,
'software-{{ rf_mode }}.cfg'
)))
class
TestGNBParameters
(
ORSTestCase
):
param_dict
=
{
param_dict
=
{
'testing'
:
True
,
'nssai'
:
{
'1'
:
{
'sd'
:
'1'
,
'sst'
:
'10'
},
'2'
:
{
'sd'
:
'2'
,
'sst'
:
'20'
},
},
}
@
classmethod
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
cls
.
param_dict
)}
@
classmethod
def
getInstanceSoftwareType
(
cls
):
return
"gnb"
def
test_gnb_conf
(
self
):
conf_file
=
glob
.
glob
(
os
.
path
.
join
(
self
.
slap
.
instance_directory
,
'*'
,
'etc'
,
'gnb.cfg'
))[
0
]
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
for
p
in
conf
[
'nr_cell_default'
][
'plmn_list'
][
0
][
'nssai'
]:
for
n
in
"sd sst"
.
split
():
self
.
assertEqual
(
p
[
n
],
self
.
param_dict
[
'nssai'
][
p
[
'sd'
]][
n
])
class
TestGNBParameters
(
ORSTestCase
):
param_dict
=
{
'testing'
:
True
,
'testing'
:
True
,
"sim_algo"
:
"milenage"
,
"imsi"
:
"001010000000331"
,
"opc"
:
"000102030405060708090A0B0C0D0E0F"
,
"amf"
:
"0x9001"
,
"sqn"
:
"000000000000"
,
"k"
:
"00112233445566778899AABBCCDDEEFF"
,
"impu"
:
"impu331"
,
"impi"
:
"impi331@amarisoft.com"
,
'tx_gain'
:
17
,
'tx_gain'
:
17
,
'rx_gain'
:
17
,
'rx_gain'
:
17
,
'dl_earfcn'
:
325320
,
'n_rb_dl'
:
50
,
'enb_id'
:
"0x17"
,
'pci'
:
250
,
'mme_list'
:
{
'10.0.0.1'
:
{
'mme_addr'
:
'10.0.0.1'
},
'2001:db8::1'
:
{
'mme_addr'
:
'2001:db8::1'
},
},
'epc_plmn'
:
'00102'
,
'dl_nr_arfcn'
:
325320
,
'dl_nr_arfcn'
:
325320
,
'nr_band'
:
99
,
'nr_band'
:
99
,
'nr_bandwidth'
:
50
,
'nr_bandwidth'
:
50
,
'ssb_nr_arfcn'
:
377790
,
'rue_addr'
:
"192.168.99.88"
,
'n_antenna_dl'
:
2
,
'n_antenna_ul'
:
2
,
'gnb_id'
:
"0x17"
,
'gnb_id'
:
"0x17"
,
'ssb_pos_bitmap'
:
"10"
,
'ssb_pos_bitmap'
:
"10"
,
'pci'
:
250
,
'amf_list'
:
{
'10.0.0.1'
:
{
'amf_addr'
:
'10.0.0.1'
},
'2001:db8::1'
:
{
'amf_addr'
:
'2001:db8::1'
},
},
}
enb_param_dict
=
{
'plmn_list'
:
{
'00101'
:
{
'attach_without_pdn'
:
True
,
'plmn'
:
'00101'
,
'reserved'
:
True
},
'00102'
:
{
'attach_without_pdn'
:
False
,
'plmn'
:
'00102'
,
'reserved'
:
False
},
},
}
gnb_param_dict1
=
{
'plmn_list'
:
{
'plmn_list'
:
{
'00101'
:
{
'plmn'
:
'00101'
,
'ranac'
:
1
,
'reserved'
:
True
,
'tac'
:
1
},
'00101'
:
{
'plmn'
:
'00101'
,
'ranac'
:
1
,
'reserved'
:
True
,
'tac'
:
1
},
'00102'
:
{
'plmn'
:
'00102'
,
'ranac'
:
2
,
'reserved'
:
False
,
'tac'
:
2
},
'00102'
:
{
'plmn'
:
'00102'
,
'ranac'
:
2
,
'reserved'
:
False
,
'tac'
:
2
},
},
},
'amf_list'
:
{
}
'10.0.0.1'
:
{
'amf_addr'
:
'10.0.0.1'
},
gnb_param_dict2
=
{
'2001:db8::1'
:
{
'amf_addr'
:
'2001:db8::1'
},
'nssai'
:
{
'1'
:
{
'sd'
:
1
,
'sst'
:
10
},
'2'
:
{
'sd'
:
2
,
'sst'
:
20
},
},
},
}
}
enb_param_dict
.
update
(
param_dict
)
gnb_param_dict1
.
update
(
param_dict
)
gnb_param_dict2
.
update
(
param_dict
)
class
TestGNBParameters1
(
ORSTestCase
):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
cls
.
param_dict
)}
return
{
'_'
:
json
.
dumps
(
gnb_param_dict1
)}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
return
"gnb"
return
"gnb"
...
@@ -99,63 +108,43 @@ class TestGNBParameters(ORSTestCase):
...
@@ -99,63 +108,43 @@ class TestGNBParameters(ORSTestCase):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
self
.
assertEqual
(
conf
[
'tx_gain'
],
self
.
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
gnb_param_dict1
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
self
.
param_dict
[
'rx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
gnb_param_dict1
[
'rx_gain'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'dl_nr_arfcn'
],
self
.
param_dict
[
'dl_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'dl_nr_arfcn'
],
gnb_param_dict1
[
'dl_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'band'
],
self
.
param_dict
[
'nr_band'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'band'
],
gnb_param_dict1
[
'nr_band'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'ssb_pos_bitmap'
],
self
.
param_dict
[
'ssb_pos_bitmap'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'ssb_pos_bitmap'
],
gnb_param_dict1
[
'ssb_pos_bitmap'
])
self
.
assertEqual
(
conf
[
'nr_cell_default'
][
'n_id_cell'
],
self
.
param_dict
[
'pci'
])
self
.
assertEqual
(
conf
[
'nr_cell_default'
][
'n_id_cell'
],
gnb_param_dict1
[
'pci'
])
self
.
assertEqual
(
conf
[
'gnb_id'
],
int
(
self
.
param_dict
[
'gnb_id'
],
16
))
self
.
assertEqual
(
conf
[
'gnb_id'
],
int
(
gnb_param_dict1
[
'gnb_id'
],
16
))
for
p
in
conf
[
'nr_cell_default'
][
'plmn_list'
]:
for
p
in
conf
[
'nr_cell_default'
][
'plmn_list'
]:
for
n
in
"plmn ranac reserved tac"
.
split
():
for
n
in
"plmn ranac reserved tac"
.
split
():
self
.
assertEqual
(
p
[
n
],
self
.
param_dict
[
'plmn_list'
][
p
[
'plmn'
]][
n
])
self
.
assertEqual
(
p
[
n
],
gnb_param_dict1
[
'plmn_list'
][
p
[
'plmn'
]][
n
])
for
p
in
conf
[
'amf_list'
]:
for
p
in
conf
[
'amf_list'
]:
self
.
assertEqual
(
p
[
'amf_addr'
],
self
.
param_dict
[
'amf_list'
][
p
[
'amf_addr'
]][
'amf_addr'
])
self
.
assertEqual
(
p
[
'amf_addr'
],
gnb_param_dict1
[
'amf_list'
][
p
[
'amf_addr'
]][
'amf_addr'
])
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
for
l
in
f
:
for
l
in
f
:
if
l
.
startswith
(
'#define NR_BANDWIDTH'
):
if
l
.
startswith
(
'#define NR_BANDWIDTH'
):
self
.
assertIn
(
str
(
self
.
param_dict
[
'nr_bandwidth'
]),
l
)
self
.
assertIn
(
str
(
gnb_param_dict1
[
'nr_bandwidth'
]),
l
)
class
TestGNBParameters2
(
ORSTestCase
):
enb_param_dict
=
{
@
classmethod
'testing'
:
True
,
def
getInstanceParameterDict
(
cls
):
'tx_gain'
:
17
,
return
{
'_'
:
json
.
dumps
(
gnb_param_dict2
)}
'rx_gain'
:
17
,
@
classmethod
'dl_earfcn'
:
325320
,
def
getInstanceSoftwareType
(
cls
):
'n_rb_dl'
:
50
,
return
"gnb"
'enb_id'
:
"0x17"
,
def
test_gnb_conf
(
self
):
'pci'
:
250
,
'plmn_list'
:
{
'00101'
:
{
'attach_without_pdn'
:
True
,
'plmn'
:
'00101'
,
'reserved'
:
True
},
'00102'
:
{
'attach_without_pdn'
:
False
,
'plmn'
:
'00102'
,
'reserved'
:
False
},
},
'mme_list'
:
{
'10.0.0.1'
:
{
'mme_addr'
:
'10.0.0.1'
},
'2001:db8::1'
:
{
'mme_addr'
:
'2001:db8::1'
},
},
}
epc_param_dict
=
{
'testing'
:
True
,
'epc_plmn'
:
'00102'
,
}
ue_param_dict
=
{
conf_file
=
glob
.
glob
(
os
.
path
.
join
(
'testing'
:
True
,
self
.
slap
.
instance_directory
,
'*'
,
'etc'
,
'gnb.cfg'
))[
0
]
'tx_gain'
:
17
,
'rx_gain'
:
17
,
with
open
(
conf_file
,
'r'
)
as
f
:
'dl_earfcn'
:
325320
,
conf
=
yaml
.
load
(
f
)
'n_rb_dl'
:
50
,
'dl_nr_arfcn'
:
325320
,
for
p
in
conf
[
'nr_cell_default'
][
'plmn_list'
][
0
][
'nssai'
]:
'nr_band'
:
99
,
for
n
in
"sd sst"
.
split
():
'nr_bandwidth'
:
50
,
self
.
assertEqual
(
p
[
n
],
gnb_param_dict2
[
'nssai'
][
str
(
p
[
'sd'
])][
n
])
'ssb_nr_arfcn'
:
377790
,
'imsi'
:
"001010123456789"
,
'k'
:
"00112233445566778899aabbccddeeff"
,
'rue_addr'
:
"192.168.99.88"
,
'n_antenna_dl'
:
2
,
'n_antenna_ul'
:
2
,
}
def
test_enb_conf
(
self
):
def
test_enb_conf
(
self
):
...
@@ -186,7 +175,7 @@ def test_mme_conf(self):
...
@@ -186,7 +175,7 @@ def test_mme_conf(self):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
self
.
assertEqual
(
conf
[
'plmn'
],
epc_
param_dict
[
'epc_plmn'
])
self
.
assertEqual
(
conf
[
'plmn'
],
param_dict
[
'epc_plmn'
])
class
TestENBParameters
(
ORSTestCase
):
class
TestENBParameters
(
ORSTestCase
):
...
@@ -203,7 +192,7 @@ class TestEPCParameters(ORSTestCase):
...
@@ -203,7 +192,7 @@ class TestEPCParameters(ORSTestCase):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
epc_
param_dict
)}
return
{
'_'
:
json
.
dumps
(
param_dict
)}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
return
"epc"
return
"epc"
...
@@ -215,7 +204,7 @@ class TestENBEPCParameters(ORSTestCase):
...
@@ -215,7 +204,7 @@ class TestENBEPCParameters(ORSTestCase):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
return
{
'_'
:
json
.
dumps
(
dict
(
enb_param_dict
,
**
epc_param_dict
)
),
'_'
:
json
.
dumps
(
enb_param_dict
),
}
}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
...
@@ -225,17 +214,6 @@ class TestENBEPCParameters(ORSTestCase):
...
@@ -225,17 +214,6 @@ class TestENBEPCParameters(ORSTestCase):
def
test_mme_conf
(
self
):
def
test_mme_conf
(
self
):
test_mme_conf
(
self
)
test_mme_conf
(
self
)
sim_card_param_dict
=
{
"sim_algo"
:
"milenage"
,
"imsi"
:
"001010000000331"
,
"opc"
:
"000102030405060708090A0B0C0D0E0F"
,
"amf"
:
"0x9001"
,
"sqn"
:
"000000000000"
,
"k"
:
"00112233445566778899AABBCCDDEEFF"
,
"impu"
:
"impu331"
,
"impi"
:
"impi331@amarisoft.com"
,
}
def
test_ue_db
(
self
):
def
test_ue_db
(
self
):
conf_file
=
glob
.
glob
(
os
.
path
.
join
(
conf_file
=
glob
.
glob
(
os
.
path
.
join
(
...
@@ -244,16 +222,16 @@ def test_ue_db(self):
...
@@ -244,16 +222,16 @@ def test_ue_db(self):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
for
n
in
"sim_algo imsi opc sqn impu impi"
.
split
():
for
n
in
"sim_algo imsi opc sqn impu impi"
.
split
():
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
n
],
sim_card_
param_dict
[
n
])
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
n
],
param_dict
[
n
])
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
'K'
],
sim_card_
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
'K'
],
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
'amf'
],
int
(
sim_card_
param_dict
[
'amf'
],
16
))
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
'amf'
],
int
(
param_dict
[
'amf'
],
16
))
def
requestSlaveInstance
(
cls
,
software_type
):
def
requestSlaveInstance
(
cls
,
software_type
):
software_url
=
cls
.
getSoftwareURL
()
software_url
=
cls
.
getSoftwareURL
()
return
cls
.
slap
.
request
(
return
cls
.
slap
.
request
(
software_release
=
software_url
,
software_release
=
software_url
,
partition_reference
=
"SIM-CARD-EPC"
,
partition_reference
=
"SIM-CARD-EPC"
,
partition_parameter_kw
=
{
'_'
:
json
.
dumps
(
sim_card_
param_dict
)},
partition_parameter_kw
=
{
'_'
:
json
.
dumps
(
param_dict
)},
shared
=
True
,
shared
=
True
,
software_type
=
software_type
,
software_type
=
software_type
,
)
)
...
@@ -330,7 +308,7 @@ class TestGNBEPCSimCard(ORSTestCase):
...
@@ -330,7 +308,7 @@ class TestGNBEPCSimCard(ORSTestCase):
class
TestUELTEParameters
(
ORSTestCase
):
class
TestUELTEParameters
(
ORSTestCase
):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
ue_
param_dict
)}
return
{
'_'
:
json
.
dumps
(
param_dict
)}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
return
"ue-lte"
return
"ue-lte"
...
@@ -340,20 +318,20 @@ class TestUELTEParameters(ORSTestCase):
...
@@ -340,20 +318,20 @@ class TestUELTEParameters(ORSTestCase):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'dl_earfcn'
],
ue_
param_dict
[
'dl_earfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'dl_earfcn'
],
param_dict
[
'dl_earfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'bandwidth'
],
ue_
param_dict
[
'n_rb_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'bandwidth'
],
param_dict
[
'n_rb_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_dl'
],
ue_
param_dict
[
'n_antenna_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_dl'
],
param_dict
[
'n_antenna_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_ul'
],
ue_
param_dict
[
'n_antenna_ul'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_ul'
],
param_dict
[
'n_antenna_ul'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'rue_addr'
],
ue_param_dict
[
'rue_addr'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'rue_addr'
],
param_dict
[
'rue_addr'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'imsi'
],
ue_
param_dict
[
'imsi'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'imsi'
],
param_dict
[
'imsi'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'K'
],
ue_
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'K'
],
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
ue_
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
ue_
param_dict
[
'rx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
param_dict
[
'rx_gain'
])
class
TestUENRParameters
(
ORSTestCase
):
class
TestUENRParameters
(
ORSTestCase
):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
ue_
param_dict
)}
return
{
'_'
:
json
.
dumps
(
param_dict
)}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
return
"ue-nr"
return
"ue-nr"
...
@@ -363,15 +341,15 @@ class TestUENRParameters(ORSTestCase):
...
@@ -363,15 +341,15 @@ class TestUENRParameters(ORSTestCase):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'ssb_nr_arfcn'
],
ue_
param_dict
[
'ssb_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'ssb_nr_arfcn'
],
param_dict
[
'ssb_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'dl_nr_arfcn'
],
ue_
param_dict
[
'dl_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'dl_nr_arfcn'
],
param_dict
[
'dl_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'bandwidth'
],
ue_
param_dict
[
'nr_bandwidth'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'bandwidth'
],
param_dict
[
'nr_bandwidth'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'band'
],
ue_
param_dict
[
'nr_band'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'band'
],
param_dict
[
'nr_band'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_dl'
],
ue_
param_dict
[
'n_antenna_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_dl'
],
param_dict
[
'n_antenna_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_ul'
],
ue_
param_dict
[
'n_antenna_ul'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_ul'
],
param_dict
[
'n_antenna_ul'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'rue_addr'
],
ue_param_dict
[
'rue_addr'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'rue_addr'
],
param_dict
[
'rue_addr'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'imsi'
],
ue_
param_dict
[
'imsi'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'imsi'
],
param_dict
[
'imsi'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'K'
],
ue_
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'K'
],
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
ue_
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
ue_
param_dict
[
'rx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
param_dict
[
'rx_gain'
])
software/ors-amarisoft/test/testTDD1900.py
View file @
8c6a11d7
...
@@ -36,59 +36,68 @@ setUpModule, ORSTestCase = makeModuleSetUpAndTestCaseClass(
...
@@ -36,59 +36,68 @@ setUpModule, ORSTestCase = makeModuleSetUpAndTestCaseClass(
os
.
path
.
abspath
(
os
.
path
.
abspath
(
os
.
path
.
join
(
os
.
path
.
dirname
(
__file__
),
'..'
,
'software-tdd1900.cfg'
)))
os
.
path
.
join
(
os
.
path
.
dirname
(
__file__
),
'..'
,
'software-tdd1900.cfg'
)))
class
TestGNBParameters
(
ORSTestCase
):
param_dict
=
{
param_dict
=
{
'testing'
:
True
,
'nssai'
:
{
'1'
:
{
'sd'
:
'1'
,
'sst'
:
'10'
},
'2'
:
{
'sd'
:
'2'
,
'sst'
:
'20'
},
},
}
@
classmethod
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
cls
.
param_dict
)}
@
classmethod
def
getInstanceSoftwareType
(
cls
):
return
"gnb"
def
test_gnb_conf
(
self
):
conf_file
=
glob
.
glob
(
os
.
path
.
join
(
self
.
slap
.
instance_directory
,
'*'
,
'etc'
,
'gnb.cfg'
))[
0
]
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
for
p
in
conf
[
'nr_cell_default'
][
'plmn_list'
][
0
][
'nssai'
]:
for
n
in
"sd sst"
.
split
():
self
.
assertEqual
(
p
[
n
],
self
.
param_dict
[
'nssai'
][
p
[
'sd'
]][
n
])
class
TestGNBParameters
(
ORSTestCase
):
param_dict
=
{
'testing'
:
True
,
'testing'
:
True
,
"sim_algo"
:
"milenage"
,
"imsi"
:
"001010000000331"
,
"opc"
:
"000102030405060708090A0B0C0D0E0F"
,
"amf"
:
"0x9001"
,
"sqn"
:
"000000000000"
,
"k"
:
"00112233445566778899AABBCCDDEEFF"
,
"impu"
:
"impu331"
,
"impi"
:
"impi331@amarisoft.com"
,
'tx_gain'
:
17
,
'tx_gain'
:
17
,
'rx_gain'
:
17
,
'rx_gain'
:
17
,
'dl_earfcn'
:
325320
,
'n_rb_dl'
:
50
,
'enb_id'
:
"0x17"
,
'pci'
:
250
,
'mme_list'
:
{
'10.0.0.1'
:
{
'mme_addr'
:
'10.0.0.1'
},
'2001:db8::1'
:
{
'mme_addr'
:
'2001:db8::1'
},
},
'epc_plmn'
:
'00102'
,
'dl_nr_arfcn'
:
325320
,
'dl_nr_arfcn'
:
325320
,
'nr_band'
:
99
,
'nr_band'
:
99
,
'nr_bandwidth'
:
50
,
'nr_bandwidth'
:
50
,
'ssb_nr_arfcn'
:
377790
,
'rue_addr'
:
"192.168.99.88"
,
'n_antenna_dl'
:
2
,
'n_antenna_ul'
:
2
,
'gnb_id'
:
"0x17"
,
'gnb_id'
:
"0x17"
,
'ssb_pos_bitmap'
:
"10"
,
'ssb_pos_bitmap'
:
"10"
,
'pci'
:
250
,
'amf_list'
:
{
'10.0.0.1'
:
{
'amf_addr'
:
'10.0.0.1'
},
'2001:db8::1'
:
{
'amf_addr'
:
'2001:db8::1'
},
},
}
enb_param_dict
=
{
'plmn_list'
:
{
'00101'
:
{
'attach_without_pdn'
:
True
,
'plmn'
:
'00101'
,
'reserved'
:
True
},
'00102'
:
{
'attach_without_pdn'
:
False
,
'plmn'
:
'00102'
,
'reserved'
:
False
},
},
}
gnb_param_dict1
=
{
'plmn_list'
:
{
'plmn_list'
:
{
'00101'
:
{
'plmn'
:
'00101'
,
'ranac'
:
1
,
'reserved'
:
True
,
'tac'
:
1
},
'00101'
:
{
'plmn'
:
'00101'
,
'ranac'
:
1
,
'reserved'
:
True
,
'tac'
:
1
},
'00102'
:
{
'plmn'
:
'00102'
,
'ranac'
:
2
,
'reserved'
:
False
,
'tac'
:
2
},
'00102'
:
{
'plmn'
:
'00102'
,
'ranac'
:
2
,
'reserved'
:
False
,
'tac'
:
2
},
},
},
'amf_list'
:
{
}
'10.0.0.1'
:
{
'amf_addr'
:
'10.0.0.1'
},
gnb_param_dict2
=
{
'2001:db8::1'
:
{
'amf_addr'
:
'2001:db8::1'
},
'nssai'
:
{
'1'
:
{
'sd'
:
1
,
'sst'
:
10
},
'2'
:
{
'sd'
:
2
,
'sst'
:
20
},
},
},
}
}
enb_param_dict
.
update
(
param_dict
)
gnb_param_dict1
.
update
(
param_dict
)
gnb_param_dict2
.
update
(
param_dict
)
class
TestGNBParameters1
(
ORSTestCase
):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
cls
.
param_dict
)}
return
{
'_'
:
json
.
dumps
(
gnb_param_dict1
)}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
return
"gnb"
return
"gnb"
...
@@ -99,63 +108,43 @@ class TestGNBParameters(ORSTestCase):
...
@@ -99,63 +108,43 @@ class TestGNBParameters(ORSTestCase):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
self
.
assertEqual
(
conf
[
'tx_gain'
],
self
.
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
gnb_param_dict1
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
self
.
param_dict
[
'rx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
gnb_param_dict1
[
'rx_gain'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'dl_nr_arfcn'
],
self
.
param_dict
[
'dl_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'dl_nr_arfcn'
],
gnb_param_dict1
[
'dl_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'band'
],
self
.
param_dict
[
'nr_band'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'band'
],
gnb_param_dict1
[
'nr_band'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'ssb_pos_bitmap'
],
self
.
param_dict
[
'ssb_pos_bitmap'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'ssb_pos_bitmap'
],
gnb_param_dict1
[
'ssb_pos_bitmap'
])
self
.
assertEqual
(
conf
[
'nr_cell_default'
][
'n_id_cell'
],
self
.
param_dict
[
'pci'
])
self
.
assertEqual
(
conf
[
'nr_cell_default'
][
'n_id_cell'
],
gnb_param_dict1
[
'pci'
])
self
.
assertEqual
(
conf
[
'gnb_id'
],
int
(
self
.
param_dict
[
'gnb_id'
],
16
))
self
.
assertEqual
(
conf
[
'gnb_id'
],
int
(
gnb_param_dict1
[
'gnb_id'
],
16
))
for
p
in
conf
[
'nr_cell_default'
][
'plmn_list'
]:
for
p
in
conf
[
'nr_cell_default'
][
'plmn_list'
]:
for
n
in
"plmn ranac reserved tac"
.
split
():
for
n
in
"plmn ranac reserved tac"
.
split
():
self
.
assertEqual
(
p
[
n
],
self
.
param_dict
[
'plmn_list'
][
p
[
'plmn'
]][
n
])
self
.
assertEqual
(
p
[
n
],
gnb_param_dict1
[
'plmn_list'
][
p
[
'plmn'
]][
n
])
for
p
in
conf
[
'amf_list'
]:
for
p
in
conf
[
'amf_list'
]:
self
.
assertEqual
(
p
[
'amf_addr'
],
self
.
param_dict
[
'amf_list'
][
p
[
'amf_addr'
]][
'amf_addr'
])
self
.
assertEqual
(
p
[
'amf_addr'
],
gnb_param_dict1
[
'amf_list'
][
p
[
'amf_addr'
]][
'amf_addr'
])
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
for
l
in
f
:
for
l
in
f
:
if
l
.
startswith
(
'#define NR_BANDWIDTH'
):
if
l
.
startswith
(
'#define NR_BANDWIDTH'
):
self
.
assertIn
(
str
(
self
.
param_dict
[
'nr_bandwidth'
]),
l
)
self
.
assertIn
(
str
(
gnb_param_dict1
[
'nr_bandwidth'
]),
l
)
class
TestGNBParameters2
(
ORSTestCase
):
enb_param_dict
=
{
@
classmethod
'testing'
:
True
,
def
getInstanceParameterDict
(
cls
):
'tx_gain'
:
17
,
return
{
'_'
:
json
.
dumps
(
gnb_param_dict2
)}
'rx_gain'
:
17
,
@
classmethod
'dl_earfcn'
:
325320
,
def
getInstanceSoftwareType
(
cls
):
'n_rb_dl'
:
50
,
return
"gnb"
'enb_id'
:
"0x17"
,
def
test_gnb_conf
(
self
):
'pci'
:
250
,
'plmn_list'
:
{
'00101'
:
{
'attach_without_pdn'
:
True
,
'plmn'
:
'00101'
,
'reserved'
:
True
},
'00102'
:
{
'attach_without_pdn'
:
False
,
'plmn'
:
'00102'
,
'reserved'
:
False
},
},
'mme_list'
:
{
'10.0.0.1'
:
{
'mme_addr'
:
'10.0.0.1'
},
'2001:db8::1'
:
{
'mme_addr'
:
'2001:db8::1'
},
},
}
epc_param_dict
=
{
'testing'
:
True
,
'epc_plmn'
:
'00102'
,
}
ue_param_dict
=
{
conf_file
=
glob
.
glob
(
os
.
path
.
join
(
'testing'
:
True
,
self
.
slap
.
instance_directory
,
'*'
,
'etc'
,
'gnb.cfg'
))[
0
]
'tx_gain'
:
17
,
'rx_gain'
:
17
,
with
open
(
conf_file
,
'r'
)
as
f
:
'dl_earfcn'
:
325320
,
conf
=
yaml
.
load
(
f
)
'n_rb_dl'
:
50
,
'dl_nr_arfcn'
:
325320
,
for
p
in
conf
[
'nr_cell_default'
][
'plmn_list'
][
0
][
'nssai'
]:
'nr_band'
:
99
,
for
n
in
"sd sst"
.
split
():
'nr_bandwidth'
:
50
,
self
.
assertEqual
(
p
[
n
],
gnb_param_dict2
[
'nssai'
][
str
(
p
[
'sd'
])][
n
])
'ssb_nr_arfcn'
:
377790
,
'imsi'
:
"001010123456789"
,
'k'
:
"00112233445566778899aabbccddeeff"
,
'rue_addr'
:
"192.168.99.88"
,
'n_antenna_dl'
:
2
,
'n_antenna_ul'
:
2
,
}
def
test_enb_conf
(
self
):
def
test_enb_conf
(
self
):
...
@@ -186,7 +175,7 @@ def test_mme_conf(self):
...
@@ -186,7 +175,7 @@ def test_mme_conf(self):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
self
.
assertEqual
(
conf
[
'plmn'
],
epc_
param_dict
[
'epc_plmn'
])
self
.
assertEqual
(
conf
[
'plmn'
],
param_dict
[
'epc_plmn'
])
class
TestENBParameters
(
ORSTestCase
):
class
TestENBParameters
(
ORSTestCase
):
...
@@ -203,7 +192,7 @@ class TestEPCParameters(ORSTestCase):
...
@@ -203,7 +192,7 @@ class TestEPCParameters(ORSTestCase):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
epc_
param_dict
)}
return
{
'_'
:
json
.
dumps
(
param_dict
)}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
return
"epc"
return
"epc"
...
@@ -215,7 +204,7 @@ class TestENBEPCParameters(ORSTestCase):
...
@@ -215,7 +204,7 @@ class TestENBEPCParameters(ORSTestCase):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
return
{
'_'
:
json
.
dumps
(
dict
(
enb_param_dict
,
**
epc_param_dict
)
),
'_'
:
json
.
dumps
(
enb_param_dict
),
}
}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
...
@@ -225,17 +214,6 @@ class TestENBEPCParameters(ORSTestCase):
...
@@ -225,17 +214,6 @@ class TestENBEPCParameters(ORSTestCase):
def
test_mme_conf
(
self
):
def
test_mme_conf
(
self
):
test_mme_conf
(
self
)
test_mme_conf
(
self
)
sim_card_param_dict
=
{
"sim_algo"
:
"milenage"
,
"imsi"
:
"001010000000331"
,
"opc"
:
"000102030405060708090A0B0C0D0E0F"
,
"amf"
:
"0x9001"
,
"sqn"
:
"000000000000"
,
"k"
:
"00112233445566778899AABBCCDDEEFF"
,
"impu"
:
"impu331"
,
"impi"
:
"impi331@amarisoft.com"
,
}
def
test_ue_db
(
self
):
def
test_ue_db
(
self
):
conf_file
=
glob
.
glob
(
os
.
path
.
join
(
conf_file
=
glob
.
glob
(
os
.
path
.
join
(
...
@@ -244,16 +222,16 @@ def test_ue_db(self):
...
@@ -244,16 +222,16 @@ def test_ue_db(self):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
for
n
in
"sim_algo imsi opc sqn impu impi"
.
split
():
for
n
in
"sim_algo imsi opc sqn impu impi"
.
split
():
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
n
],
sim_card_
param_dict
[
n
])
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
n
],
param_dict
[
n
])
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
'K'
],
sim_card_
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
'K'
],
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
'amf'
],
int
(
sim_card_
param_dict
[
'amf'
],
16
))
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
'amf'
],
int
(
param_dict
[
'amf'
],
16
))
def
requestSlaveInstance
(
cls
,
software_type
):
def
requestSlaveInstance
(
cls
,
software_type
):
software_url
=
cls
.
getSoftwareURL
()
software_url
=
cls
.
getSoftwareURL
()
return
cls
.
slap
.
request
(
return
cls
.
slap
.
request
(
software_release
=
software_url
,
software_release
=
software_url
,
partition_reference
=
"SIM-CARD-EPC"
,
partition_reference
=
"SIM-CARD-EPC"
,
partition_parameter_kw
=
{
'_'
:
json
.
dumps
(
sim_card_
param_dict
)},
partition_parameter_kw
=
{
'_'
:
json
.
dumps
(
param_dict
)},
shared
=
True
,
shared
=
True
,
software_type
=
software_type
,
software_type
=
software_type
,
)
)
...
@@ -330,7 +308,7 @@ class TestGNBEPCSimCard(ORSTestCase):
...
@@ -330,7 +308,7 @@ class TestGNBEPCSimCard(ORSTestCase):
class
TestUELTEParameters
(
ORSTestCase
):
class
TestUELTEParameters
(
ORSTestCase
):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
ue_
param_dict
)}
return
{
'_'
:
json
.
dumps
(
param_dict
)}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
return
"ue-lte"
return
"ue-lte"
...
@@ -340,20 +318,20 @@ class TestUELTEParameters(ORSTestCase):
...
@@ -340,20 +318,20 @@ class TestUELTEParameters(ORSTestCase):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'dl_earfcn'
],
ue_
param_dict
[
'dl_earfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'dl_earfcn'
],
param_dict
[
'dl_earfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'bandwidth'
],
ue_
param_dict
[
'n_rb_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'bandwidth'
],
param_dict
[
'n_rb_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_dl'
],
ue_
param_dict
[
'n_antenna_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_dl'
],
param_dict
[
'n_antenna_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_ul'
],
ue_
param_dict
[
'n_antenna_ul'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_ul'
],
param_dict
[
'n_antenna_ul'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'rue_addr'
],
ue_param_dict
[
'rue_addr'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'rue_addr'
],
param_dict
[
'rue_addr'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'imsi'
],
ue_
param_dict
[
'imsi'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'imsi'
],
param_dict
[
'imsi'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'K'
],
ue_
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'K'
],
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
ue_
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
ue_
param_dict
[
'rx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
param_dict
[
'rx_gain'
])
class
TestUENRParameters
(
ORSTestCase
):
class
TestUENRParameters
(
ORSTestCase
):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
ue_
param_dict
)}
return
{
'_'
:
json
.
dumps
(
param_dict
)}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
return
"ue-nr"
return
"ue-nr"
...
@@ -363,15 +341,15 @@ class TestUENRParameters(ORSTestCase):
...
@@ -363,15 +341,15 @@ class TestUENRParameters(ORSTestCase):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'ssb_nr_arfcn'
],
ue_
param_dict
[
'ssb_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'ssb_nr_arfcn'
],
param_dict
[
'ssb_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'dl_nr_arfcn'
],
ue_
param_dict
[
'dl_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'dl_nr_arfcn'
],
param_dict
[
'dl_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'bandwidth'
],
ue_
param_dict
[
'nr_bandwidth'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'bandwidth'
],
param_dict
[
'nr_bandwidth'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'band'
],
ue_
param_dict
[
'nr_band'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'band'
],
param_dict
[
'nr_band'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_dl'
],
ue_
param_dict
[
'n_antenna_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_dl'
],
param_dict
[
'n_antenna_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_ul'
],
ue_
param_dict
[
'n_antenna_ul'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_ul'
],
param_dict
[
'n_antenna_ul'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'rue_addr'
],
ue_param_dict
[
'rue_addr'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'rue_addr'
],
param_dict
[
'rue_addr'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'imsi'
],
ue_
param_dict
[
'imsi'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'imsi'
],
param_dict
[
'imsi'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'K'
],
ue_
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'K'
],
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
ue_
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
ue_
param_dict
[
'rx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
param_dict
[
'rx_gain'
])
software/ors-amarisoft/test/testTDD2600.py
View file @
8c6a11d7
...
@@ -36,59 +36,68 @@ setUpModule, ORSTestCase = makeModuleSetUpAndTestCaseClass(
...
@@ -36,59 +36,68 @@ setUpModule, ORSTestCase = makeModuleSetUpAndTestCaseClass(
os
.
path
.
abspath
(
os
.
path
.
abspath
(
os
.
path
.
join
(
os
.
path
.
dirname
(
__file__
),
'..'
,
'software-tdd2600.cfg'
)))
os
.
path
.
join
(
os
.
path
.
dirname
(
__file__
),
'..'
,
'software-tdd2600.cfg'
)))
class
TestGNBParameters
(
ORSTestCase
):
param_dict
=
{
param_dict
=
{
'testing'
:
True
,
'nssai'
:
{
'1'
:
{
'sd'
:
'1'
,
'sst'
:
'10'
},
'2'
:
{
'sd'
:
'2'
,
'sst'
:
'20'
},
},
}
@
classmethod
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
cls
.
param_dict
)}
@
classmethod
def
getInstanceSoftwareType
(
cls
):
return
"gnb"
def
test_gnb_conf
(
self
):
conf_file
=
glob
.
glob
(
os
.
path
.
join
(
self
.
slap
.
instance_directory
,
'*'
,
'etc'
,
'gnb.cfg'
))[
0
]
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
for
p
in
conf
[
'nr_cell_default'
][
'plmn_list'
][
0
][
'nssai'
]:
for
n
in
"sd sst"
.
split
():
self
.
assertEqual
(
p
[
n
],
self
.
param_dict
[
'nssai'
][
p
[
'sd'
]][
n
])
class
TestGNBParameters
(
ORSTestCase
):
param_dict
=
{
'testing'
:
True
,
'testing'
:
True
,
"sim_algo"
:
"milenage"
,
"imsi"
:
"001010000000331"
,
"opc"
:
"000102030405060708090A0B0C0D0E0F"
,
"amf"
:
"0x9001"
,
"sqn"
:
"000000000000"
,
"k"
:
"00112233445566778899AABBCCDDEEFF"
,
"impu"
:
"impu331"
,
"impi"
:
"impi331@amarisoft.com"
,
'tx_gain'
:
17
,
'tx_gain'
:
17
,
'rx_gain'
:
17
,
'rx_gain'
:
17
,
'dl_earfcn'
:
325320
,
'n_rb_dl'
:
50
,
'enb_id'
:
"0x17"
,
'pci'
:
250
,
'mme_list'
:
{
'10.0.0.1'
:
{
'mme_addr'
:
'10.0.0.1'
},
'2001:db8::1'
:
{
'mme_addr'
:
'2001:db8::1'
},
},
'epc_plmn'
:
'00102'
,
'dl_nr_arfcn'
:
325320
,
'dl_nr_arfcn'
:
325320
,
'nr_band'
:
99
,
'nr_band'
:
99
,
'nr_bandwidth'
:
50
,
'nr_bandwidth'
:
50
,
'ssb_nr_arfcn'
:
377790
,
'rue_addr'
:
"192.168.99.88"
,
'n_antenna_dl'
:
2
,
'n_antenna_ul'
:
2
,
'gnb_id'
:
"0x17"
,
'gnb_id'
:
"0x17"
,
'ssb_pos_bitmap'
:
"10"
,
'ssb_pos_bitmap'
:
"10"
,
'pci'
:
250
,
'amf_list'
:
{
'10.0.0.1'
:
{
'amf_addr'
:
'10.0.0.1'
},
'2001:db8::1'
:
{
'amf_addr'
:
'2001:db8::1'
},
},
}
enb_param_dict
=
{
'plmn_list'
:
{
'00101'
:
{
'attach_without_pdn'
:
True
,
'plmn'
:
'00101'
,
'reserved'
:
True
},
'00102'
:
{
'attach_without_pdn'
:
False
,
'plmn'
:
'00102'
,
'reserved'
:
False
},
},
}
gnb_param_dict1
=
{
'plmn_list'
:
{
'plmn_list'
:
{
'00101'
:
{
'plmn'
:
'00101'
,
'ranac'
:
1
,
'reserved'
:
True
,
'tac'
:
1
},
'00101'
:
{
'plmn'
:
'00101'
,
'ranac'
:
1
,
'reserved'
:
True
,
'tac'
:
1
},
'00102'
:
{
'plmn'
:
'00102'
,
'ranac'
:
2
,
'reserved'
:
False
,
'tac'
:
2
},
'00102'
:
{
'plmn'
:
'00102'
,
'ranac'
:
2
,
'reserved'
:
False
,
'tac'
:
2
},
},
},
'amf_list'
:
{
}
'10.0.0.1'
:
{
'amf_addr'
:
'10.0.0.1'
},
gnb_param_dict2
=
{
'2001:db8::1'
:
{
'amf_addr'
:
'2001:db8::1'
},
'nssai'
:
{
'1'
:
{
'sd'
:
1
,
'sst'
:
10
},
'2'
:
{
'sd'
:
2
,
'sst'
:
20
},
},
},
}
}
enb_param_dict
.
update
(
param_dict
)
gnb_param_dict1
.
update
(
param_dict
)
gnb_param_dict2
.
update
(
param_dict
)
class
TestGNBParameters1
(
ORSTestCase
):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
cls
.
param_dict
)}
return
{
'_'
:
json
.
dumps
(
gnb_param_dict1
)}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
return
"gnb"
return
"gnb"
...
@@ -99,63 +108,43 @@ class TestGNBParameters(ORSTestCase):
...
@@ -99,63 +108,43 @@ class TestGNBParameters(ORSTestCase):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
self
.
assertEqual
(
conf
[
'tx_gain'
],
self
.
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
gnb_param_dict1
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
self
.
param_dict
[
'rx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
gnb_param_dict1
[
'rx_gain'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'dl_nr_arfcn'
],
self
.
param_dict
[
'dl_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'dl_nr_arfcn'
],
gnb_param_dict1
[
'dl_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'band'
],
self
.
param_dict
[
'nr_band'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'band'
],
gnb_param_dict1
[
'nr_band'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'ssb_pos_bitmap'
],
self
.
param_dict
[
'ssb_pos_bitmap'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'ssb_pos_bitmap'
],
gnb_param_dict1
[
'ssb_pos_bitmap'
])
self
.
assertEqual
(
conf
[
'nr_cell_default'
][
'n_id_cell'
],
self
.
param_dict
[
'pci'
])
self
.
assertEqual
(
conf
[
'nr_cell_default'
][
'n_id_cell'
],
gnb_param_dict1
[
'pci'
])
self
.
assertEqual
(
conf
[
'gnb_id'
],
int
(
self
.
param_dict
[
'gnb_id'
],
16
))
self
.
assertEqual
(
conf
[
'gnb_id'
],
int
(
gnb_param_dict1
[
'gnb_id'
],
16
))
for
p
in
conf
[
'nr_cell_default'
][
'plmn_list'
]:
for
p
in
conf
[
'nr_cell_default'
][
'plmn_list'
]:
for
n
in
"plmn ranac reserved tac"
.
split
():
for
n
in
"plmn ranac reserved tac"
.
split
():
self
.
assertEqual
(
p
[
n
],
self
.
param_dict
[
'plmn_list'
][
p
[
'plmn'
]][
n
])
self
.
assertEqual
(
p
[
n
],
gnb_param_dict1
[
'plmn_list'
][
p
[
'plmn'
]][
n
])
for
p
in
conf
[
'amf_list'
]:
for
p
in
conf
[
'amf_list'
]:
self
.
assertEqual
(
p
[
'amf_addr'
],
self
.
param_dict
[
'amf_list'
][
p
[
'amf_addr'
]][
'amf_addr'
])
self
.
assertEqual
(
p
[
'amf_addr'
],
gnb_param_dict1
[
'amf_list'
][
p
[
'amf_addr'
]][
'amf_addr'
])
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
for
l
in
f
:
for
l
in
f
:
if
l
.
startswith
(
'#define NR_BANDWIDTH'
):
if
l
.
startswith
(
'#define NR_BANDWIDTH'
):
self
.
assertIn
(
str
(
self
.
param_dict
[
'nr_bandwidth'
]),
l
)
self
.
assertIn
(
str
(
gnb_param_dict1
[
'nr_bandwidth'
]),
l
)
class
TestGNBParameters2
(
ORSTestCase
):
enb_param_dict
=
{
@
classmethod
'testing'
:
True
,
def
getInstanceParameterDict
(
cls
):
'tx_gain'
:
17
,
return
{
'_'
:
json
.
dumps
(
gnb_param_dict2
)}
'rx_gain'
:
17
,
@
classmethod
'dl_earfcn'
:
325320
,
def
getInstanceSoftwareType
(
cls
):
'n_rb_dl'
:
50
,
return
"gnb"
'enb_id'
:
"0x17"
,
def
test_gnb_conf
(
self
):
'pci'
:
250
,
'plmn_list'
:
{
'00101'
:
{
'attach_without_pdn'
:
True
,
'plmn'
:
'00101'
,
'reserved'
:
True
},
'00102'
:
{
'attach_without_pdn'
:
False
,
'plmn'
:
'00102'
,
'reserved'
:
False
},
},
'mme_list'
:
{
'10.0.0.1'
:
{
'mme_addr'
:
'10.0.0.1'
},
'2001:db8::1'
:
{
'mme_addr'
:
'2001:db8::1'
},
},
}
epc_param_dict
=
{
'testing'
:
True
,
'epc_plmn'
:
'00102'
,
}
ue_param_dict
=
{
conf_file
=
glob
.
glob
(
os
.
path
.
join
(
'testing'
:
True
,
self
.
slap
.
instance_directory
,
'*'
,
'etc'
,
'gnb.cfg'
))[
0
]
'tx_gain'
:
17
,
'rx_gain'
:
17
,
with
open
(
conf_file
,
'r'
)
as
f
:
'dl_earfcn'
:
325320
,
conf
=
yaml
.
load
(
f
)
'n_rb_dl'
:
50
,
'dl_nr_arfcn'
:
325320
,
for
p
in
conf
[
'nr_cell_default'
][
'plmn_list'
][
0
][
'nssai'
]:
'nr_band'
:
99
,
for
n
in
"sd sst"
.
split
():
'nr_bandwidth'
:
50
,
self
.
assertEqual
(
p
[
n
],
gnb_param_dict2
[
'nssai'
][
str
(
p
[
'sd'
])][
n
])
'ssb_nr_arfcn'
:
377790
,
'imsi'
:
"001010123456789"
,
'k'
:
"00112233445566778899aabbccddeeff"
,
'rue_addr'
:
"192.168.99.88"
,
'n_antenna_dl'
:
2
,
'n_antenna_ul'
:
2
,
}
def
test_enb_conf
(
self
):
def
test_enb_conf
(
self
):
...
@@ -186,7 +175,7 @@ def test_mme_conf(self):
...
@@ -186,7 +175,7 @@ def test_mme_conf(self):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
self
.
assertEqual
(
conf
[
'plmn'
],
epc_
param_dict
[
'epc_plmn'
])
self
.
assertEqual
(
conf
[
'plmn'
],
param_dict
[
'epc_plmn'
])
class
TestENBParameters
(
ORSTestCase
):
class
TestENBParameters
(
ORSTestCase
):
...
@@ -203,7 +192,7 @@ class TestEPCParameters(ORSTestCase):
...
@@ -203,7 +192,7 @@ class TestEPCParameters(ORSTestCase):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
epc_
param_dict
)}
return
{
'_'
:
json
.
dumps
(
param_dict
)}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
return
"epc"
return
"epc"
...
@@ -215,7 +204,7 @@ class TestENBEPCParameters(ORSTestCase):
...
@@ -215,7 +204,7 @@ class TestENBEPCParameters(ORSTestCase):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
return
{
'_'
:
json
.
dumps
(
dict
(
enb_param_dict
,
**
epc_param_dict
)
),
'_'
:
json
.
dumps
(
enb_param_dict
),
}
}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
...
@@ -225,17 +214,6 @@ class TestENBEPCParameters(ORSTestCase):
...
@@ -225,17 +214,6 @@ class TestENBEPCParameters(ORSTestCase):
def
test_mme_conf
(
self
):
def
test_mme_conf
(
self
):
test_mme_conf
(
self
)
test_mme_conf
(
self
)
sim_card_param_dict
=
{
"sim_algo"
:
"milenage"
,
"imsi"
:
"001010000000331"
,
"opc"
:
"000102030405060708090A0B0C0D0E0F"
,
"amf"
:
"0x9001"
,
"sqn"
:
"000000000000"
,
"k"
:
"00112233445566778899AABBCCDDEEFF"
,
"impu"
:
"impu331"
,
"impi"
:
"impi331@amarisoft.com"
,
}
def
test_ue_db
(
self
):
def
test_ue_db
(
self
):
conf_file
=
glob
.
glob
(
os
.
path
.
join
(
conf_file
=
glob
.
glob
(
os
.
path
.
join
(
...
@@ -244,16 +222,16 @@ def test_ue_db(self):
...
@@ -244,16 +222,16 @@ def test_ue_db(self):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
for
n
in
"sim_algo imsi opc sqn impu impi"
.
split
():
for
n
in
"sim_algo imsi opc sqn impu impi"
.
split
():
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
n
],
sim_card_
param_dict
[
n
])
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
n
],
param_dict
[
n
])
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
'K'
],
sim_card_
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
'K'
],
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
'amf'
],
int
(
sim_card_
param_dict
[
'amf'
],
16
))
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
'amf'
],
int
(
param_dict
[
'amf'
],
16
))
def
requestSlaveInstance
(
cls
,
software_type
):
def
requestSlaveInstance
(
cls
,
software_type
):
software_url
=
cls
.
getSoftwareURL
()
software_url
=
cls
.
getSoftwareURL
()
return
cls
.
slap
.
request
(
return
cls
.
slap
.
request
(
software_release
=
software_url
,
software_release
=
software_url
,
partition_reference
=
"SIM-CARD-EPC"
,
partition_reference
=
"SIM-CARD-EPC"
,
partition_parameter_kw
=
{
'_'
:
json
.
dumps
(
sim_card_
param_dict
)},
partition_parameter_kw
=
{
'_'
:
json
.
dumps
(
param_dict
)},
shared
=
True
,
shared
=
True
,
software_type
=
software_type
,
software_type
=
software_type
,
)
)
...
@@ -330,7 +308,7 @@ class TestGNBEPCSimCard(ORSTestCase):
...
@@ -330,7 +308,7 @@ class TestGNBEPCSimCard(ORSTestCase):
class
TestUELTEParameters
(
ORSTestCase
):
class
TestUELTEParameters
(
ORSTestCase
):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
ue_
param_dict
)}
return
{
'_'
:
json
.
dumps
(
param_dict
)}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
return
"ue-lte"
return
"ue-lte"
...
@@ -340,20 +318,20 @@ class TestUELTEParameters(ORSTestCase):
...
@@ -340,20 +318,20 @@ class TestUELTEParameters(ORSTestCase):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'dl_earfcn'
],
ue_
param_dict
[
'dl_earfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'dl_earfcn'
],
param_dict
[
'dl_earfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'bandwidth'
],
ue_
param_dict
[
'n_rb_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'bandwidth'
],
param_dict
[
'n_rb_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_dl'
],
ue_
param_dict
[
'n_antenna_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_dl'
],
param_dict
[
'n_antenna_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_ul'
],
ue_
param_dict
[
'n_antenna_ul'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_ul'
],
param_dict
[
'n_antenna_ul'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'rue_addr'
],
ue_param_dict
[
'rue_addr'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'rue_addr'
],
param_dict
[
'rue_addr'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'imsi'
],
ue_
param_dict
[
'imsi'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'imsi'
],
param_dict
[
'imsi'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'K'
],
ue_
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'K'
],
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
ue_
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
ue_
param_dict
[
'rx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
param_dict
[
'rx_gain'
])
class
TestUENRParameters
(
ORSTestCase
):
class
TestUENRParameters
(
ORSTestCase
):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
ue_
param_dict
)}
return
{
'_'
:
json
.
dumps
(
param_dict
)}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
return
"ue-nr"
return
"ue-nr"
...
@@ -363,15 +341,15 @@ class TestUENRParameters(ORSTestCase):
...
@@ -363,15 +341,15 @@ class TestUENRParameters(ORSTestCase):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'ssb_nr_arfcn'
],
ue_
param_dict
[
'ssb_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'ssb_nr_arfcn'
],
param_dict
[
'ssb_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'dl_nr_arfcn'
],
ue_
param_dict
[
'dl_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'dl_nr_arfcn'
],
param_dict
[
'dl_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'bandwidth'
],
ue_
param_dict
[
'nr_bandwidth'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'bandwidth'
],
param_dict
[
'nr_bandwidth'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'band'
],
ue_
param_dict
[
'nr_band'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'band'
],
param_dict
[
'nr_band'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_dl'
],
ue_
param_dict
[
'n_antenna_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_dl'
],
param_dict
[
'n_antenna_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_ul'
],
ue_
param_dict
[
'n_antenna_ul'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_ul'
],
param_dict
[
'n_antenna_ul'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'rue_addr'
],
ue_param_dict
[
'rue_addr'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'rue_addr'
],
param_dict
[
'rue_addr'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'imsi'
],
ue_
param_dict
[
'imsi'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'imsi'
],
param_dict
[
'imsi'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'K'
],
ue_
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'K'
],
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
ue_
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
ue_
param_dict
[
'rx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
param_dict
[
'rx_gain'
])
software/ors-amarisoft/test/testTDD3500.py
View file @
8c6a11d7
...
@@ -36,59 +36,68 @@ setUpModule, ORSTestCase = makeModuleSetUpAndTestCaseClass(
...
@@ -36,59 +36,68 @@ setUpModule, ORSTestCase = makeModuleSetUpAndTestCaseClass(
os
.
path
.
abspath
(
os
.
path
.
abspath
(
os
.
path
.
join
(
os
.
path
.
dirname
(
__file__
),
'..'
,
'software-tdd3500.cfg'
)))
os
.
path
.
join
(
os
.
path
.
dirname
(
__file__
),
'..'
,
'software-tdd3500.cfg'
)))
class
TestGNBParameters
(
ORSTestCase
):
param_dict
=
{
param_dict
=
{
'testing'
:
True
,
'nssai'
:
{
'1'
:
{
'sd'
:
'1'
,
'sst'
:
'10'
},
'2'
:
{
'sd'
:
'2'
,
'sst'
:
'20'
},
},
}
@
classmethod
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
cls
.
param_dict
)}
@
classmethod
def
getInstanceSoftwareType
(
cls
):
return
"gnb"
def
test_gnb_conf
(
self
):
conf_file
=
glob
.
glob
(
os
.
path
.
join
(
self
.
slap
.
instance_directory
,
'*'
,
'etc'
,
'gnb.cfg'
))[
0
]
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
for
p
in
conf
[
'nr_cell_default'
][
'plmn_list'
][
0
][
'nssai'
]:
for
n
in
"sd sst"
.
split
():
self
.
assertEqual
(
p
[
n
],
self
.
param_dict
[
'nssai'
][
p
[
'sd'
]][
n
])
class
TestGNBParameters
(
ORSTestCase
):
param_dict
=
{
'testing'
:
True
,
'testing'
:
True
,
"sim_algo"
:
"milenage"
,
"imsi"
:
"001010000000331"
,
"opc"
:
"000102030405060708090A0B0C0D0E0F"
,
"amf"
:
"0x9001"
,
"sqn"
:
"000000000000"
,
"k"
:
"00112233445566778899AABBCCDDEEFF"
,
"impu"
:
"impu331"
,
"impi"
:
"impi331@amarisoft.com"
,
'tx_gain'
:
17
,
'tx_gain'
:
17
,
'rx_gain'
:
17
,
'rx_gain'
:
17
,
'dl_earfcn'
:
325320
,
'n_rb_dl'
:
50
,
'enb_id'
:
"0x17"
,
'pci'
:
250
,
'mme_list'
:
{
'10.0.0.1'
:
{
'mme_addr'
:
'10.0.0.1'
},
'2001:db8::1'
:
{
'mme_addr'
:
'2001:db8::1'
},
},
'epc_plmn'
:
'00102'
,
'dl_nr_arfcn'
:
325320
,
'dl_nr_arfcn'
:
325320
,
'nr_band'
:
99
,
'nr_band'
:
99
,
'nr_bandwidth'
:
50
,
'nr_bandwidth'
:
50
,
'ssb_nr_arfcn'
:
377790
,
'rue_addr'
:
"192.168.99.88"
,
'n_antenna_dl'
:
2
,
'n_antenna_ul'
:
2
,
'gnb_id'
:
"0x17"
,
'gnb_id'
:
"0x17"
,
'ssb_pos_bitmap'
:
"10"
,
'ssb_pos_bitmap'
:
"10"
,
'pci'
:
250
,
'amf_list'
:
{
'10.0.0.1'
:
{
'amf_addr'
:
'10.0.0.1'
},
'2001:db8::1'
:
{
'amf_addr'
:
'2001:db8::1'
},
},
}
enb_param_dict
=
{
'plmn_list'
:
{
'00101'
:
{
'attach_without_pdn'
:
True
,
'plmn'
:
'00101'
,
'reserved'
:
True
},
'00102'
:
{
'attach_without_pdn'
:
False
,
'plmn'
:
'00102'
,
'reserved'
:
False
},
},
}
gnb_param_dict1
=
{
'plmn_list'
:
{
'plmn_list'
:
{
'00101'
:
{
'plmn'
:
'00101'
,
'ranac'
:
1
,
'reserved'
:
True
,
'tac'
:
1
},
'00101'
:
{
'plmn'
:
'00101'
,
'ranac'
:
1
,
'reserved'
:
True
,
'tac'
:
1
},
'00102'
:
{
'plmn'
:
'00102'
,
'ranac'
:
2
,
'reserved'
:
False
,
'tac'
:
2
},
'00102'
:
{
'plmn'
:
'00102'
,
'ranac'
:
2
,
'reserved'
:
False
,
'tac'
:
2
},
},
},
'amf_list'
:
{
}
'10.0.0.1'
:
{
'amf_addr'
:
'10.0.0.1'
},
gnb_param_dict2
=
{
'2001:db8::1'
:
{
'amf_addr'
:
'2001:db8::1'
},
'nssai'
:
{
'1'
:
{
'sd'
:
1
,
'sst'
:
10
},
'2'
:
{
'sd'
:
2
,
'sst'
:
20
},
},
},
}
}
enb_param_dict
.
update
(
param_dict
)
gnb_param_dict1
.
update
(
param_dict
)
gnb_param_dict2
.
update
(
param_dict
)
class
TestGNBParameters1
(
ORSTestCase
):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
cls
.
param_dict
)}
return
{
'_'
:
json
.
dumps
(
gnb_param_dict1
)}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
return
"gnb"
return
"gnb"
...
@@ -99,63 +108,43 @@ class TestGNBParameters(ORSTestCase):
...
@@ -99,63 +108,43 @@ class TestGNBParameters(ORSTestCase):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
self
.
assertEqual
(
conf
[
'tx_gain'
],
self
.
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
gnb_param_dict1
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
self
.
param_dict
[
'rx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
gnb_param_dict1
[
'rx_gain'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'dl_nr_arfcn'
],
self
.
param_dict
[
'dl_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'dl_nr_arfcn'
],
gnb_param_dict1
[
'dl_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'band'
],
self
.
param_dict
[
'nr_band'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'band'
],
gnb_param_dict1
[
'nr_band'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'ssb_pos_bitmap'
],
self
.
param_dict
[
'ssb_pos_bitmap'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'ssb_pos_bitmap'
],
gnb_param_dict1
[
'ssb_pos_bitmap'
])
self
.
assertEqual
(
conf
[
'nr_cell_default'
][
'n_id_cell'
],
self
.
param_dict
[
'pci'
])
self
.
assertEqual
(
conf
[
'nr_cell_default'
][
'n_id_cell'
],
gnb_param_dict1
[
'pci'
])
self
.
assertEqual
(
conf
[
'gnb_id'
],
int
(
self
.
param_dict
[
'gnb_id'
],
16
))
self
.
assertEqual
(
conf
[
'gnb_id'
],
int
(
gnb_param_dict1
[
'gnb_id'
],
16
))
for
p
in
conf
[
'nr_cell_default'
][
'plmn_list'
]:
for
p
in
conf
[
'nr_cell_default'
][
'plmn_list'
]:
for
n
in
"plmn ranac reserved tac"
.
split
():
for
n
in
"plmn ranac reserved tac"
.
split
():
self
.
assertEqual
(
p
[
n
],
self
.
param_dict
[
'plmn_list'
][
p
[
'plmn'
]][
n
])
self
.
assertEqual
(
p
[
n
],
gnb_param_dict1
[
'plmn_list'
][
p
[
'plmn'
]][
n
])
for
p
in
conf
[
'amf_list'
]:
for
p
in
conf
[
'amf_list'
]:
self
.
assertEqual
(
p
[
'amf_addr'
],
self
.
param_dict
[
'amf_list'
][
p
[
'amf_addr'
]][
'amf_addr'
])
self
.
assertEqual
(
p
[
'amf_addr'
],
gnb_param_dict1
[
'amf_list'
][
p
[
'amf_addr'
]][
'amf_addr'
])
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
for
l
in
f
:
for
l
in
f
:
if
l
.
startswith
(
'#define NR_BANDWIDTH'
):
if
l
.
startswith
(
'#define NR_BANDWIDTH'
):
self
.
assertIn
(
str
(
self
.
param_dict
[
'nr_bandwidth'
]),
l
)
self
.
assertIn
(
str
(
gnb_param_dict1
[
'nr_bandwidth'
]),
l
)
class
TestGNBParameters2
(
ORSTestCase
):
enb_param_dict
=
{
@
classmethod
'testing'
:
True
,
def
getInstanceParameterDict
(
cls
):
'tx_gain'
:
17
,
return
{
'_'
:
json
.
dumps
(
gnb_param_dict2
)}
'rx_gain'
:
17
,
@
classmethod
'dl_earfcn'
:
325320
,
def
getInstanceSoftwareType
(
cls
):
'n_rb_dl'
:
50
,
return
"gnb"
'enb_id'
:
"0x17"
,
def
test_gnb_conf
(
self
):
'pci'
:
250
,
'plmn_list'
:
{
'00101'
:
{
'attach_without_pdn'
:
True
,
'plmn'
:
'00101'
,
'reserved'
:
True
},
'00102'
:
{
'attach_without_pdn'
:
False
,
'plmn'
:
'00102'
,
'reserved'
:
False
},
},
'mme_list'
:
{
'10.0.0.1'
:
{
'mme_addr'
:
'10.0.0.1'
},
'2001:db8::1'
:
{
'mme_addr'
:
'2001:db8::1'
},
},
}
epc_param_dict
=
{
'testing'
:
True
,
'epc_plmn'
:
'00102'
,
}
ue_param_dict
=
{
conf_file
=
glob
.
glob
(
os
.
path
.
join
(
'testing'
:
True
,
self
.
slap
.
instance_directory
,
'*'
,
'etc'
,
'gnb.cfg'
))[
0
]
'tx_gain'
:
17
,
'rx_gain'
:
17
,
with
open
(
conf_file
,
'r'
)
as
f
:
'dl_earfcn'
:
325320
,
conf
=
yaml
.
load
(
f
)
'n_rb_dl'
:
50
,
'dl_nr_arfcn'
:
325320
,
for
p
in
conf
[
'nr_cell_default'
][
'plmn_list'
][
0
][
'nssai'
]:
'nr_band'
:
99
,
for
n
in
"sd sst"
.
split
():
'nr_bandwidth'
:
50
,
self
.
assertEqual
(
p
[
n
],
gnb_param_dict2
[
'nssai'
][
str
(
p
[
'sd'
])][
n
])
'ssb_nr_arfcn'
:
377790
,
'imsi'
:
"001010123456789"
,
'k'
:
"00112233445566778899aabbccddeeff"
,
'rue_addr'
:
"192.168.99.88"
,
'n_antenna_dl'
:
2
,
'n_antenna_ul'
:
2
,
}
def
test_enb_conf
(
self
):
def
test_enb_conf
(
self
):
...
@@ -186,7 +175,7 @@ def test_mme_conf(self):
...
@@ -186,7 +175,7 @@ def test_mme_conf(self):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
self
.
assertEqual
(
conf
[
'plmn'
],
epc_
param_dict
[
'epc_plmn'
])
self
.
assertEqual
(
conf
[
'plmn'
],
param_dict
[
'epc_plmn'
])
class
TestENBParameters
(
ORSTestCase
):
class
TestENBParameters
(
ORSTestCase
):
...
@@ -203,7 +192,7 @@ class TestEPCParameters(ORSTestCase):
...
@@ -203,7 +192,7 @@ class TestEPCParameters(ORSTestCase):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
epc_
param_dict
)}
return
{
'_'
:
json
.
dumps
(
param_dict
)}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
return
"epc"
return
"epc"
...
@@ -215,7 +204,7 @@ class TestENBEPCParameters(ORSTestCase):
...
@@ -215,7 +204,7 @@ class TestENBEPCParameters(ORSTestCase):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
return
{
'_'
:
json
.
dumps
(
dict
(
enb_param_dict
,
**
epc_param_dict
)
),
'_'
:
json
.
dumps
(
enb_param_dict
),
}
}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
...
@@ -225,17 +214,6 @@ class TestENBEPCParameters(ORSTestCase):
...
@@ -225,17 +214,6 @@ class TestENBEPCParameters(ORSTestCase):
def
test_mme_conf
(
self
):
def
test_mme_conf
(
self
):
test_mme_conf
(
self
)
test_mme_conf
(
self
)
sim_card_param_dict
=
{
"sim_algo"
:
"milenage"
,
"imsi"
:
"001010000000331"
,
"opc"
:
"000102030405060708090A0B0C0D0E0F"
,
"amf"
:
"0x9001"
,
"sqn"
:
"000000000000"
,
"k"
:
"00112233445566778899AABBCCDDEEFF"
,
"impu"
:
"impu331"
,
"impi"
:
"impi331@amarisoft.com"
,
}
def
test_ue_db
(
self
):
def
test_ue_db
(
self
):
conf_file
=
glob
.
glob
(
os
.
path
.
join
(
conf_file
=
glob
.
glob
(
os
.
path
.
join
(
...
@@ -244,16 +222,16 @@ def test_ue_db(self):
...
@@ -244,16 +222,16 @@ def test_ue_db(self):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
for
n
in
"sim_algo imsi opc sqn impu impi"
.
split
():
for
n
in
"sim_algo imsi opc sqn impu impi"
.
split
():
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
n
],
sim_card_
param_dict
[
n
])
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
n
],
param_dict
[
n
])
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
'K'
],
sim_card_
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
'K'
],
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
'amf'
],
int
(
sim_card_
param_dict
[
'amf'
],
16
))
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
'amf'
],
int
(
param_dict
[
'amf'
],
16
))
def
requestSlaveInstance
(
cls
,
software_type
):
def
requestSlaveInstance
(
cls
,
software_type
):
software_url
=
cls
.
getSoftwareURL
()
software_url
=
cls
.
getSoftwareURL
()
return
cls
.
slap
.
request
(
return
cls
.
slap
.
request
(
software_release
=
software_url
,
software_release
=
software_url
,
partition_reference
=
"SIM-CARD-EPC"
,
partition_reference
=
"SIM-CARD-EPC"
,
partition_parameter_kw
=
{
'_'
:
json
.
dumps
(
sim_card_
param_dict
)},
partition_parameter_kw
=
{
'_'
:
json
.
dumps
(
param_dict
)},
shared
=
True
,
shared
=
True
,
software_type
=
software_type
,
software_type
=
software_type
,
)
)
...
@@ -330,7 +308,7 @@ class TestGNBEPCSimCard(ORSTestCase):
...
@@ -330,7 +308,7 @@ class TestGNBEPCSimCard(ORSTestCase):
class
TestUELTEParameters
(
ORSTestCase
):
class
TestUELTEParameters
(
ORSTestCase
):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
ue_
param_dict
)}
return
{
'_'
:
json
.
dumps
(
param_dict
)}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
return
"ue-lte"
return
"ue-lte"
...
@@ -340,20 +318,20 @@ class TestUELTEParameters(ORSTestCase):
...
@@ -340,20 +318,20 @@ class TestUELTEParameters(ORSTestCase):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'dl_earfcn'
],
ue_
param_dict
[
'dl_earfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'dl_earfcn'
],
param_dict
[
'dl_earfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'bandwidth'
],
ue_
param_dict
[
'n_rb_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'bandwidth'
],
param_dict
[
'n_rb_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_dl'
],
ue_
param_dict
[
'n_antenna_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_dl'
],
param_dict
[
'n_antenna_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_ul'
],
ue_
param_dict
[
'n_antenna_ul'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_ul'
],
param_dict
[
'n_antenna_ul'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'rue_addr'
],
ue_param_dict
[
'rue_addr'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'rue_addr'
],
param_dict
[
'rue_addr'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'imsi'
],
ue_
param_dict
[
'imsi'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'imsi'
],
param_dict
[
'imsi'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'K'
],
ue_
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'K'
],
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
ue_
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
ue_
param_dict
[
'rx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
param_dict
[
'rx_gain'
])
class
TestUENRParameters
(
ORSTestCase
):
class
TestUENRParameters
(
ORSTestCase
):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
ue_
param_dict
)}
return
{
'_'
:
json
.
dumps
(
param_dict
)}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
return
"ue-nr"
return
"ue-nr"
...
@@ -363,15 +341,15 @@ class TestUENRParameters(ORSTestCase):
...
@@ -363,15 +341,15 @@ class TestUENRParameters(ORSTestCase):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'ssb_nr_arfcn'
],
ue_
param_dict
[
'ssb_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'ssb_nr_arfcn'
],
param_dict
[
'ssb_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'dl_nr_arfcn'
],
ue_
param_dict
[
'dl_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'dl_nr_arfcn'
],
param_dict
[
'dl_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'bandwidth'
],
ue_
param_dict
[
'nr_bandwidth'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'bandwidth'
],
param_dict
[
'nr_bandwidth'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'band'
],
ue_
param_dict
[
'nr_band'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'band'
],
param_dict
[
'nr_band'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_dl'
],
ue_
param_dict
[
'n_antenna_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_dl'
],
param_dict
[
'n_antenna_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_ul'
],
ue_
param_dict
[
'n_antenna_ul'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_ul'
],
param_dict
[
'n_antenna_ul'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'rue_addr'
],
ue_param_dict
[
'rue_addr'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'rue_addr'
],
param_dict
[
'rue_addr'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'imsi'
],
ue_
param_dict
[
'imsi'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'imsi'
],
param_dict
[
'imsi'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'K'
],
ue_
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'K'
],
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
ue_
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
ue_
param_dict
[
'rx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
param_dict
[
'rx_gain'
])
software/ors-amarisoft/test/testTDD3700.py
View file @
8c6a11d7
...
@@ -36,59 +36,68 @@ setUpModule, ORSTestCase = makeModuleSetUpAndTestCaseClass(
...
@@ -36,59 +36,68 @@ setUpModule, ORSTestCase = makeModuleSetUpAndTestCaseClass(
os
.
path
.
abspath
(
os
.
path
.
abspath
(
os
.
path
.
join
(
os
.
path
.
dirname
(
__file__
),
'..'
,
'software-tdd3700.cfg'
)))
os
.
path
.
join
(
os
.
path
.
dirname
(
__file__
),
'..'
,
'software-tdd3700.cfg'
)))
class
TestGNBParameters
(
ORSTestCase
):
param_dict
=
{
param_dict
=
{
'testing'
:
True
,
'nssai'
:
{
'1'
:
{
'sd'
:
'1'
,
'sst'
:
'10'
},
'2'
:
{
'sd'
:
'2'
,
'sst'
:
'20'
},
},
}
@
classmethod
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
cls
.
param_dict
)}
@
classmethod
def
getInstanceSoftwareType
(
cls
):
return
"gnb"
def
test_gnb_conf
(
self
):
conf_file
=
glob
.
glob
(
os
.
path
.
join
(
self
.
slap
.
instance_directory
,
'*'
,
'etc'
,
'gnb.cfg'
))[
0
]
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
for
p
in
conf
[
'nr_cell_default'
][
'plmn_list'
][
0
][
'nssai'
]:
for
n
in
"sd sst"
.
split
():
self
.
assertEqual
(
p
[
n
],
self
.
param_dict
[
'nssai'
][
p
[
'sd'
]][
n
])
class
TestGNBParameters
(
ORSTestCase
):
param_dict
=
{
'testing'
:
True
,
'testing'
:
True
,
"sim_algo"
:
"milenage"
,
"imsi"
:
"001010000000331"
,
"opc"
:
"000102030405060708090A0B0C0D0E0F"
,
"amf"
:
"0x9001"
,
"sqn"
:
"000000000000"
,
"k"
:
"00112233445566778899AABBCCDDEEFF"
,
"impu"
:
"impu331"
,
"impi"
:
"impi331@amarisoft.com"
,
'tx_gain'
:
17
,
'tx_gain'
:
17
,
'rx_gain'
:
17
,
'rx_gain'
:
17
,
'dl_earfcn'
:
325320
,
'n_rb_dl'
:
50
,
'enb_id'
:
"0x17"
,
'pci'
:
250
,
'mme_list'
:
{
'10.0.0.1'
:
{
'mme_addr'
:
'10.0.0.1'
},
'2001:db8::1'
:
{
'mme_addr'
:
'2001:db8::1'
},
},
'epc_plmn'
:
'00102'
,
'dl_nr_arfcn'
:
325320
,
'dl_nr_arfcn'
:
325320
,
'nr_band'
:
99
,
'nr_band'
:
99
,
'nr_bandwidth'
:
50
,
'nr_bandwidth'
:
50
,
'ssb_nr_arfcn'
:
377790
,
'rue_addr'
:
"192.168.99.88"
,
'n_antenna_dl'
:
2
,
'n_antenna_ul'
:
2
,
'gnb_id'
:
"0x17"
,
'gnb_id'
:
"0x17"
,
'ssb_pos_bitmap'
:
"10"
,
'ssb_pos_bitmap'
:
"10"
,
'pci'
:
250
,
'amf_list'
:
{
'10.0.0.1'
:
{
'amf_addr'
:
'10.0.0.1'
},
'2001:db8::1'
:
{
'amf_addr'
:
'2001:db8::1'
},
},
}
enb_param_dict
=
{
'plmn_list'
:
{
'00101'
:
{
'attach_without_pdn'
:
True
,
'plmn'
:
'00101'
,
'reserved'
:
True
},
'00102'
:
{
'attach_without_pdn'
:
False
,
'plmn'
:
'00102'
,
'reserved'
:
False
},
},
}
gnb_param_dict1
=
{
'plmn_list'
:
{
'plmn_list'
:
{
'00101'
:
{
'plmn'
:
'00101'
,
'ranac'
:
1
,
'reserved'
:
True
,
'tac'
:
1
},
'00101'
:
{
'plmn'
:
'00101'
,
'ranac'
:
1
,
'reserved'
:
True
,
'tac'
:
1
},
'00102'
:
{
'plmn'
:
'00102'
,
'ranac'
:
2
,
'reserved'
:
False
,
'tac'
:
2
},
'00102'
:
{
'plmn'
:
'00102'
,
'ranac'
:
2
,
'reserved'
:
False
,
'tac'
:
2
},
},
},
'amf_list'
:
{
}
'10.0.0.1'
:
{
'amf_addr'
:
'10.0.0.1'
},
gnb_param_dict2
=
{
'2001:db8::1'
:
{
'amf_addr'
:
'2001:db8::1'
},
'nssai'
:
{
'1'
:
{
'sd'
:
1
,
'sst'
:
10
},
'2'
:
{
'sd'
:
2
,
'sst'
:
20
},
},
},
}
}
enb_param_dict
.
update
(
param_dict
)
gnb_param_dict1
.
update
(
param_dict
)
gnb_param_dict2
.
update
(
param_dict
)
class
TestGNBParameters1
(
ORSTestCase
):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
cls
.
param_dict
)}
return
{
'_'
:
json
.
dumps
(
gnb_param_dict1
)}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
return
"gnb"
return
"gnb"
...
@@ -99,63 +108,43 @@ class TestGNBParameters(ORSTestCase):
...
@@ -99,63 +108,43 @@ class TestGNBParameters(ORSTestCase):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
self
.
assertEqual
(
conf
[
'tx_gain'
],
self
.
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
gnb_param_dict1
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
self
.
param_dict
[
'rx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
gnb_param_dict1
[
'rx_gain'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'dl_nr_arfcn'
],
self
.
param_dict
[
'dl_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'dl_nr_arfcn'
],
gnb_param_dict1
[
'dl_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'band'
],
self
.
param_dict
[
'nr_band'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'band'
],
gnb_param_dict1
[
'nr_band'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'ssb_pos_bitmap'
],
self
.
param_dict
[
'ssb_pos_bitmap'
])
self
.
assertEqual
(
conf
[
'nr_cell_list'
][
0
][
'ssb_pos_bitmap'
],
gnb_param_dict1
[
'ssb_pos_bitmap'
])
self
.
assertEqual
(
conf
[
'nr_cell_default'
][
'n_id_cell'
],
self
.
param_dict
[
'pci'
])
self
.
assertEqual
(
conf
[
'nr_cell_default'
][
'n_id_cell'
],
gnb_param_dict1
[
'pci'
])
self
.
assertEqual
(
conf
[
'gnb_id'
],
int
(
self
.
param_dict
[
'gnb_id'
],
16
))
self
.
assertEqual
(
conf
[
'gnb_id'
],
int
(
gnb_param_dict1
[
'gnb_id'
],
16
))
for
p
in
conf
[
'nr_cell_default'
][
'plmn_list'
]:
for
p
in
conf
[
'nr_cell_default'
][
'plmn_list'
]:
for
n
in
"plmn ranac reserved tac"
.
split
():
for
n
in
"plmn ranac reserved tac"
.
split
():
self
.
assertEqual
(
p
[
n
],
self
.
param_dict
[
'plmn_list'
][
p
[
'plmn'
]][
n
])
self
.
assertEqual
(
p
[
n
],
gnb_param_dict1
[
'plmn_list'
][
p
[
'plmn'
]][
n
])
for
p
in
conf
[
'amf_list'
]:
for
p
in
conf
[
'amf_list'
]:
self
.
assertEqual
(
p
[
'amf_addr'
],
self
.
param_dict
[
'amf_list'
][
p
[
'amf_addr'
]][
'amf_addr'
])
self
.
assertEqual
(
p
[
'amf_addr'
],
gnb_param_dict1
[
'amf_list'
][
p
[
'amf_addr'
]][
'amf_addr'
])
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
for
l
in
f
:
for
l
in
f
:
if
l
.
startswith
(
'#define NR_BANDWIDTH'
):
if
l
.
startswith
(
'#define NR_BANDWIDTH'
):
self
.
assertIn
(
str
(
self
.
param_dict
[
'nr_bandwidth'
]),
l
)
self
.
assertIn
(
str
(
gnb_param_dict1
[
'nr_bandwidth'
]),
l
)
class
TestGNBParameters2
(
ORSTestCase
):
enb_param_dict
=
{
@
classmethod
'testing'
:
True
,
def
getInstanceParameterDict
(
cls
):
'tx_gain'
:
17
,
return
{
'_'
:
json
.
dumps
(
gnb_param_dict2
)}
'rx_gain'
:
17
,
@
classmethod
'dl_earfcn'
:
325320
,
def
getInstanceSoftwareType
(
cls
):
'n_rb_dl'
:
50
,
return
"gnb"
'enb_id'
:
"0x17"
,
def
test_gnb_conf
(
self
):
'pci'
:
250
,
'plmn_list'
:
{
'00101'
:
{
'attach_without_pdn'
:
True
,
'plmn'
:
'00101'
,
'reserved'
:
True
},
'00102'
:
{
'attach_without_pdn'
:
False
,
'plmn'
:
'00102'
,
'reserved'
:
False
},
},
'mme_list'
:
{
'10.0.0.1'
:
{
'mme_addr'
:
'10.0.0.1'
},
'2001:db8::1'
:
{
'mme_addr'
:
'2001:db8::1'
},
},
}
epc_param_dict
=
{
'testing'
:
True
,
'epc_plmn'
:
'00102'
,
}
ue_param_dict
=
{
conf_file
=
glob
.
glob
(
os
.
path
.
join
(
'testing'
:
True
,
self
.
slap
.
instance_directory
,
'*'
,
'etc'
,
'gnb.cfg'
))[
0
]
'tx_gain'
:
17
,
'rx_gain'
:
17
,
with
open
(
conf_file
,
'r'
)
as
f
:
'dl_earfcn'
:
325320
,
conf
=
yaml
.
load
(
f
)
'n_rb_dl'
:
50
,
'dl_nr_arfcn'
:
325320
,
for
p
in
conf
[
'nr_cell_default'
][
'plmn_list'
][
0
][
'nssai'
]:
'nr_band'
:
99
,
for
n
in
"sd sst"
.
split
():
'nr_bandwidth'
:
50
,
self
.
assertEqual
(
p
[
n
],
gnb_param_dict2
[
'nssai'
][
str
(
p
[
'sd'
])][
n
])
'ssb_nr_arfcn'
:
377790
,
'imsi'
:
"001010123456789"
,
'k'
:
"00112233445566778899aabbccddeeff"
,
'rue_addr'
:
"192.168.99.88"
,
'n_antenna_dl'
:
2
,
'n_antenna_ul'
:
2
,
}
def
test_enb_conf
(
self
):
def
test_enb_conf
(
self
):
...
@@ -186,7 +175,7 @@ def test_mme_conf(self):
...
@@ -186,7 +175,7 @@ def test_mme_conf(self):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
self
.
assertEqual
(
conf
[
'plmn'
],
epc_
param_dict
[
'epc_plmn'
])
self
.
assertEqual
(
conf
[
'plmn'
],
param_dict
[
'epc_plmn'
])
class
TestENBParameters
(
ORSTestCase
):
class
TestENBParameters
(
ORSTestCase
):
...
@@ -203,7 +192,7 @@ class TestEPCParameters(ORSTestCase):
...
@@ -203,7 +192,7 @@ class TestEPCParameters(ORSTestCase):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
epc_
param_dict
)}
return
{
'_'
:
json
.
dumps
(
param_dict
)}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
return
"epc"
return
"epc"
...
@@ -215,7 +204,7 @@ class TestENBEPCParameters(ORSTestCase):
...
@@ -215,7 +204,7 @@ class TestENBEPCParameters(ORSTestCase):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
return
{
'_'
:
json
.
dumps
(
dict
(
enb_param_dict
,
**
epc_param_dict
)
),
'_'
:
json
.
dumps
(
enb_param_dict
),
}
}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
...
@@ -225,17 +214,6 @@ class TestENBEPCParameters(ORSTestCase):
...
@@ -225,17 +214,6 @@ class TestENBEPCParameters(ORSTestCase):
def
test_mme_conf
(
self
):
def
test_mme_conf
(
self
):
test_mme_conf
(
self
)
test_mme_conf
(
self
)
sim_card_param_dict
=
{
"sim_algo"
:
"milenage"
,
"imsi"
:
"001010000000331"
,
"opc"
:
"000102030405060708090A0B0C0D0E0F"
,
"amf"
:
"0x9001"
,
"sqn"
:
"000000000000"
,
"k"
:
"00112233445566778899AABBCCDDEEFF"
,
"impu"
:
"impu331"
,
"impi"
:
"impi331@amarisoft.com"
,
}
def
test_ue_db
(
self
):
def
test_ue_db
(
self
):
conf_file
=
glob
.
glob
(
os
.
path
.
join
(
conf_file
=
glob
.
glob
(
os
.
path
.
join
(
...
@@ -244,16 +222,16 @@ def test_ue_db(self):
...
@@ -244,16 +222,16 @@ def test_ue_db(self):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
for
n
in
"sim_algo imsi opc sqn impu impi"
.
split
():
for
n
in
"sim_algo imsi opc sqn impu impi"
.
split
():
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
n
],
sim_card_
param_dict
[
n
])
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
n
],
param_dict
[
n
])
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
'K'
],
sim_card_
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
'K'
],
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
'amf'
],
int
(
sim_card_
param_dict
[
'amf'
],
16
))
self
.
assertEqual
(
conf
[
'ue_db'
][
0
][
'amf'
],
int
(
param_dict
[
'amf'
],
16
))
def
requestSlaveInstance
(
cls
,
software_type
):
def
requestSlaveInstance
(
cls
,
software_type
):
software_url
=
cls
.
getSoftwareURL
()
software_url
=
cls
.
getSoftwareURL
()
return
cls
.
slap
.
request
(
return
cls
.
slap
.
request
(
software_release
=
software_url
,
software_release
=
software_url
,
partition_reference
=
"SIM-CARD-EPC"
,
partition_reference
=
"SIM-CARD-EPC"
,
partition_parameter_kw
=
{
'_'
:
json
.
dumps
(
sim_card_
param_dict
)},
partition_parameter_kw
=
{
'_'
:
json
.
dumps
(
param_dict
)},
shared
=
True
,
shared
=
True
,
software_type
=
software_type
,
software_type
=
software_type
,
)
)
...
@@ -330,7 +308,7 @@ class TestGNBEPCSimCard(ORSTestCase):
...
@@ -330,7 +308,7 @@ class TestGNBEPCSimCard(ORSTestCase):
class
TestUELTEParameters
(
ORSTestCase
):
class
TestUELTEParameters
(
ORSTestCase
):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
ue_
param_dict
)}
return
{
'_'
:
json
.
dumps
(
param_dict
)}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
return
"ue-lte"
return
"ue-lte"
...
@@ -340,20 +318,20 @@ class TestUELTEParameters(ORSTestCase):
...
@@ -340,20 +318,20 @@ class TestUELTEParameters(ORSTestCase):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'dl_earfcn'
],
ue_
param_dict
[
'dl_earfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'dl_earfcn'
],
param_dict
[
'dl_earfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'bandwidth'
],
ue_
param_dict
[
'n_rb_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'bandwidth'
],
param_dict
[
'n_rb_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_dl'
],
ue_
param_dict
[
'n_antenna_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_dl'
],
param_dict
[
'n_antenna_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_ul'
],
ue_
param_dict
[
'n_antenna_ul'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_ul'
],
param_dict
[
'n_antenna_ul'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'rue_addr'
],
ue_param_dict
[
'rue_addr'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'rue_addr'
],
param_dict
[
'rue_addr'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'imsi'
],
ue_
param_dict
[
'imsi'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'imsi'
],
param_dict
[
'imsi'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'K'
],
ue_
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'K'
],
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
ue_
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
ue_
param_dict
[
'rx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
param_dict
[
'rx_gain'
])
class
TestUENRParameters
(
ORSTestCase
):
class
TestUENRParameters
(
ORSTestCase
):
@
classmethod
@
classmethod
def
getInstanceParameterDict
(
cls
):
def
getInstanceParameterDict
(
cls
):
return
{
'_'
:
json
.
dumps
(
ue_
param_dict
)}
return
{
'_'
:
json
.
dumps
(
param_dict
)}
@
classmethod
@
classmethod
def
getInstanceSoftwareType
(
cls
):
def
getInstanceSoftwareType
(
cls
):
return
"ue-nr"
return
"ue-nr"
...
@@ -363,15 +341,15 @@ class TestUENRParameters(ORSTestCase):
...
@@ -363,15 +341,15 @@ class TestUENRParameters(ORSTestCase):
with
open
(
conf_file
,
'r'
)
as
f
:
with
open
(
conf_file
,
'r'
)
as
f
:
conf
=
yaml
.
load
(
f
)
conf
=
yaml
.
load
(
f
)
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'ssb_nr_arfcn'
],
ue_
param_dict
[
'ssb_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'ssb_nr_arfcn'
],
param_dict
[
'ssb_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'dl_nr_arfcn'
],
ue_
param_dict
[
'dl_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'dl_nr_arfcn'
],
param_dict
[
'dl_nr_arfcn'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'bandwidth'
],
ue_
param_dict
[
'nr_bandwidth'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'bandwidth'
],
param_dict
[
'nr_bandwidth'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'band'
],
ue_
param_dict
[
'nr_band'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'band'
],
param_dict
[
'nr_band'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_dl'
],
ue_
param_dict
[
'n_antenna_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_dl'
],
param_dict
[
'n_antenna_dl'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_ul'
],
ue_
param_dict
[
'n_antenna_ul'
])
self
.
assertEqual
(
conf
[
'cell_groups'
][
0
][
'cells'
][
0
][
'n_antenna_ul'
],
param_dict
[
'n_antenna_ul'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'rue_addr'
],
ue_param_dict
[
'rue_addr'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'rue_addr'
],
param_dict
[
'rue_addr'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'imsi'
],
ue_
param_dict
[
'imsi'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'imsi'
],
param_dict
[
'imsi'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'K'
],
ue_
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'ue_list'
][
0
][
'K'
],
param_dict
[
'k'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
ue_
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'tx_gain'
],
param_dict
[
'tx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
ue_
param_dict
[
'rx_gain'
])
self
.
assertEqual
(
conf
[
'rx_gain'
],
param_dict
[
'rx_gain'
])
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment