Commit 6e40bbc1 authored by Jérome Perrin's avatar Jérome Perrin

Merge remote-tracking branch 'upstream/master' into zope4py2

parents a7e370de 71b09e2e
...@@ -80,11 +80,11 @@ md5sum = 36281b03597252cf75169417d02fc28c ...@@ -80,11 +80,11 @@ md5sum = 36281b03597252cf75169417d02fc28c
[ue-lte.jinja2.cfg] [ue-lte.jinja2.cfg]
filename = config/ue-lte.jinja2.cfg filename = config/ue-lte.jinja2.cfg
md5sum = b90ac384eca6fcd4249fbf0b2cf63e1e md5sum = 31c166f0a1b6d664f92b8f318b233d9a
[ue-nr.jinja2.cfg] [ue-nr.jinja2.cfg]
filename = config/ue-nr.jinja2.cfg filename = config/ue-nr.jinja2.cfg
md5sum = a904db3ba9518ae0edf0ddcccfa57485 md5sum = b3078deab008d7e81ddd88ac02b8b698
[sdr-busy-promise] [sdr-busy-promise]
_update_hash_filename_ = promise/check_sdr_busy.py _update_hash_filename_ = promise/check_sdr_busy.py
......
...@@ -36,7 +36,7 @@ rf_driver: { ...@@ -36,7 +36,7 @@ rf_driver: {
impi: "{{ slapparameter_dict.get('impi', '') }}", impi: "{{ slapparameter_dict.get('impi', '') }}",
imsi: "{{ slapparameter_dict.get('imsi', slap_configuration['configuration.default_lte_imsi']) }}", imsi: "{{ slapparameter_dict.get('imsi', slap_configuration['configuration.default_lte_imsi']) }}",
K: "{{ slapparameter_dict.get('k', slap_configuration['configuration.default_lte_k']) }}", K: "{{ slapparameter_dict.get('k', slap_configuration['configuration.default_lte_k']) }}",
rue_addr: "{{ slapparameter_dict.get('rue_addr') }}", rue_addr: "{{ slapparameter_dict.get('rue_addr', '') }}",
ue_category: 12, ue_category: 12,
tun_setup_script: "ue-ifup", tun_setup_script: "ue-ifup",
apn: "internet", apn: "internet",
......
...@@ -37,7 +37,7 @@ rf_driver: { ...@@ -37,7 +37,7 @@ rf_driver: {
impi: "{{ slapparameter_dict.get('impi', '') }}", impi: "{{ slapparameter_dict.get('impi', '') }}",
imsi: "{{ slapparameter_dict.get('imsi', slap_configuration['configuration.default_nr_imsi']) }}", imsi: "{{ slapparameter_dict.get('imsi', slap_configuration['configuration.default_nr_imsi']) }}",
K: "{{ slapparameter_dict.get('k', slap_configuration['configuration.default_nr_k']) }}", K: "{{ slapparameter_dict.get('k', slap_configuration['configuration.default_nr_k']) }}",
rue_addr: "{{ slapparameter_dict.get('rue_addr') }}", rue_addr: "{{ slapparameter_dict.get('rue_addr', '') }}",
as_release: 15, as_release: 15,
ue_category: "nr", ue_category: "nr",
tun_setup_script: "ue-ifup", tun_setup_script: "ue-ifup",
......
...@@ -85,10 +85,10 @@ ...@@ -85,10 +85,10 @@
"title": "impu", "title": "impu",
"description": "Array of string or object. Each string represent an IMPU and can be a sip URI or a telephone number.", "description": "Array of string or object. Each string represent an IMPU and can be a sip URI or a telephone number.",
"type": "string", "type": "string",
"default": "000000000000" "default": ""
}, },
"impu": { "impi": {
"title": "impu", "title": "impi",
"description": "String. Defines user IMPI. Must be fully filled with hostname if necessary.", "description": "String. Defines user IMPI. Must be fully filled with hostname if necessary.",
"type": "string", "type": "string",
"default": "" "default": ""
......
...@@ -97,10 +97,10 @@ ...@@ -97,10 +97,10 @@
"title": "impu", "title": "impu",
"description": "Array of string or object. Each string represent an IMPU and can be a sip URI or a telephone number.", "description": "Array of string or object. Each string represent an IMPU and can be a sip URI or a telephone number.",
"type": "string", "type": "string",
"default": "000000000000" "default": ""
}, },
"impu": { "impi": {
"title": "impu", "title": "impi",
"description": "String. Defines user IMPI. Must be fully filled with hostname if necessary.", "description": "String. Defines user IMPI. Must be fully filled with hostname if necessary.",
"type": "string", "type": "string",
"default": "" "default": ""
......
...@@ -85,10 +85,10 @@ ...@@ -85,10 +85,10 @@
"title": "impu", "title": "impu",
"description": "Array of string or object. Each string represent an IMPU and can be a sip URI or a telephone number.", "description": "Array of string or object. Each string represent an IMPU and can be a sip URI or a telephone number.",
"type": "string", "type": "string",
"default": "000000000000" "default": ""
}, },
"impu": { "impi": {
"title": "impu", "title": "impi",
"description": "String. Defines user IMPI. Must be fully filled with hostname if necessary.", "description": "String. Defines user IMPI. Must be fully filled with hostname if necessary.",
"type": "string", "type": "string",
"default": "" "default": ""
......
...@@ -97,10 +97,10 @@ ...@@ -97,10 +97,10 @@
"title": "impu", "title": "impu",
"description": "Array of string or object. Each string represent an IMPU and can be a sip URI or a telephone number.", "description": "Array of string or object. Each string represent an IMPU and can be a sip URI or a telephone number.",
"type": "string", "type": "string",
"default": "000000000000" "default": ""
}, },
"impu": { "impi": {
"title": "impu", "title": "impi",
"description": "String. Defines user IMPI. Must be fully filled with hostname if necessary.", "description": "String. Defines user IMPI. Must be fully filled with hostname if necessary.",
"type": "string", "type": "string",
"default": "" "default": ""
......
...@@ -85,10 +85,10 @@ ...@@ -85,10 +85,10 @@
"title": "impu", "title": "impu",
"description": "Array of string or object. Each string represent an IMPU and can be a sip URI or a telephone number.", "description": "Array of string or object. Each string represent an IMPU and can be a sip URI or a telephone number.",
"type": "string", "type": "string",
"default": "000000000000" "default": ""
}, },
"impu": { "impi": {
"title": "impu", "title": "impi",
"description": "String. Defines user IMPI. Must be fully filled with hostname if necessary.", "description": "String. Defines user IMPI. Must be fully filled with hostname if necessary.",
"type": "string", "type": "string",
"default": "" "default": ""
......
...@@ -97,10 +97,10 @@ ...@@ -97,10 +97,10 @@
"title": "impu", "title": "impu",
"description": "Array of string or object. Each string represent an IMPU and can be a sip URI or a telephone number.", "description": "Array of string or object. Each string represent an IMPU and can be a sip URI or a telephone number.",
"type": "string", "type": "string",
"default": "000000000000" "default": ""
}, },
"impu": { "impi": {
"title": "impu", "title": "impi",
"description": "String. Defines user IMPI. Must be fully filled with hostname if necessary.", "description": "String. Defines user IMPI. Must be fully filled with hostname if necessary.",
"type": "string", "type": "string",
"default": "" "default": ""
......
...@@ -85,10 +85,10 @@ ...@@ -85,10 +85,10 @@
"title": "impu", "title": "impu",
"description": "Array of string or object. Each string represent an IMPU and can be a sip URI or a telephone number.", "description": "Array of string or object. Each string represent an IMPU and can be a sip URI or a telephone number.",
"type": "string", "type": "string",
"default": "000000000000" "default": ""
}, },
"impu": { "impi": {
"title": "impu", "title": "impi",
"description": "String. Defines user IMPI. Must be fully filled with hostname if necessary.", "description": "String. Defines user IMPI. Must be fully filled with hostname if necessary.",
"type": "string", "type": "string",
"default": "" "default": ""
......
...@@ -97,10 +97,10 @@ ...@@ -97,10 +97,10 @@
"title": "impu", "title": "impu",
"description": "Array of string or object. Each string represent an IMPU and can be a sip URI or a telephone number.", "description": "Array of string or object. Each string represent an IMPU and can be a sip URI or a telephone number.",
"type": "string", "type": "string",
"default": "000000000000" "default": ""
}, },
"impu": { "impi": {
"title": "impu", "title": "impi",
"description": "String. Defines user IMPI. Must be fully filled with hostname if necessary.", "description": "String. Defines user IMPI. Must be fully filled with hostname if necessary.",
"type": "string", "type": "string",
"default": "" "default": ""
......
...@@ -85,10 +85,10 @@ ...@@ -85,10 +85,10 @@
"title": "impu", "title": "impu",
"description": "Array of string or object. Each string represent an IMPU and can be a sip URI or a telephone number.", "description": "Array of string or object. Each string represent an IMPU and can be a sip URI or a telephone number.",
"type": "string", "type": "string",
"default": "000000000000" "default": ""
}, },
"impu": { "impi": {
"title": "impu", "title": "impi",
"description": "String. Defines user IMPI. Must be fully filled with hostname if necessary.", "description": "String. Defines user IMPI. Must be fully filled with hostname if necessary.",
"type": "string", "type": "string",
"default": "" "default": ""
......
...@@ -97,10 +97,10 @@ ...@@ -97,10 +97,10 @@
"title": "impu", "title": "impu",
"description": "Array of string or object. Each string represent an IMPU and can be a sip URI or a telephone number.", "description": "Array of string or object. Each string represent an IMPU and can be a sip URI or a telephone number.",
"type": "string", "type": "string",
"default": "000000000000" "default": ""
}, },
"impu": { "impi": {
"title": "impu", "title": "impi",
"description": "String. Defines user IMPI. Must be fully filled with hostname if necessary.", "description": "String. Defines user IMPI. Must be fully filled with hostname if necessary.",
"type": "string", "type": "string",
"default": "" "default": ""
......
...@@ -328,6 +328,12 @@ class TestUELTEParameters(ORSTestCase): ...@@ -328,6 +328,12 @@ class TestUELTEParameters(ORSTestCase):
self.assertEqual(conf['ue_list'][0]['rue_addr'], param_dict['rue_addr']) self.assertEqual(conf['ue_list'][0]['rue_addr'], param_dict['rue_addr'])
self.assertEqual(conf['ue_list'][0]['imsi'], param_dict['imsi']) self.assertEqual(conf['ue_list'][0]['imsi'], param_dict['imsi'])
self.assertEqual(conf['ue_list'][0]['K'], param_dict['k']) self.assertEqual(conf['ue_list'][0]['K'], param_dict['k'])
self.assertEqual(conf['ue_list'][0]['sim_algo'], param_dict['sim_algo'])
self.assertEqual(conf['ue_list'][0]['opc'], param_dict['opc'])
self.assertEqual(conf['ue_list'][0]['amf'], int(param_dict['amf'], 16))
self.assertEqual(conf['ue_list'][0]['sqn'], param_dict['sqn'])
self.assertEqual(conf['ue_list'][0]['impu'], param_dict['impu'])
self.assertEqual(conf['ue_list'][0]['impi'], param_dict['impi'])
self.assertEqual(conf['tx_gain'], param_dict['tx_gain']) self.assertEqual(conf['tx_gain'], param_dict['tx_gain'])
self.assertEqual(conf['rx_gain'], param_dict['rx_gain']) self.assertEqual(conf['rx_gain'], param_dict['rx_gain'])
...@@ -353,6 +359,12 @@ class TestUENRParameters(ORSTestCase): ...@@ -353,6 +359,12 @@ class TestUENRParameters(ORSTestCase):
self.assertEqual(conf['ue_list'][0]['rue_addr'], param_dict['rue_addr']) self.assertEqual(conf['ue_list'][0]['rue_addr'], param_dict['rue_addr'])
self.assertEqual(conf['ue_list'][0]['imsi'], param_dict['imsi']) self.assertEqual(conf['ue_list'][0]['imsi'], param_dict['imsi'])
self.assertEqual(conf['ue_list'][0]['K'], param_dict['k']) self.assertEqual(conf['ue_list'][0]['K'], param_dict['k'])
self.assertEqual(conf['ue_list'][0]['sim_algo'], param_dict['sim_algo'])
self.assertEqual(conf['ue_list'][0]['opc'], param_dict['opc'])
self.assertEqual(conf['ue_list'][0]['amf'], int(param_dict['amf'], 16))
self.assertEqual(conf['ue_list'][0]['sqn'], param_dict['sqn'])
self.assertEqual(conf['ue_list'][0]['impu'], param_dict['impu'])
self.assertEqual(conf['ue_list'][0]['impi'], param_dict['impi'])
self.assertEqual(conf['tx_gain'], param_dict['tx_gain']) self.assertEqual(conf['tx_gain'], param_dict['tx_gain'])
self.assertEqual(conf['rx_gain'], param_dict['rx_gain']) self.assertEqual(conf['rx_gain'], param_dict['rx_gain'])
...@@ -328,6 +328,12 @@ class TestUELTEParameters(ORSTestCase): ...@@ -328,6 +328,12 @@ class TestUELTEParameters(ORSTestCase):
self.assertEqual(conf['ue_list'][0]['rue_addr'], param_dict['rue_addr']) self.assertEqual(conf['ue_list'][0]['rue_addr'], param_dict['rue_addr'])
self.assertEqual(conf['ue_list'][0]['imsi'], param_dict['imsi']) self.assertEqual(conf['ue_list'][0]['imsi'], param_dict['imsi'])
self.assertEqual(conf['ue_list'][0]['K'], param_dict['k']) self.assertEqual(conf['ue_list'][0]['K'], param_dict['k'])
self.assertEqual(conf['ue_list'][0]['sim_algo'], param_dict['sim_algo'])
self.assertEqual(conf['ue_list'][0]['opc'], param_dict['opc'])
self.assertEqual(conf['ue_list'][0]['amf'], int(param_dict['amf'], 16))
self.assertEqual(conf['ue_list'][0]['sqn'], param_dict['sqn'])
self.assertEqual(conf['ue_list'][0]['impu'], param_dict['impu'])
self.assertEqual(conf['ue_list'][0]['impi'], param_dict['impi'])
self.assertEqual(conf['tx_gain'], param_dict['tx_gain']) self.assertEqual(conf['tx_gain'], param_dict['tx_gain'])
self.assertEqual(conf['rx_gain'], param_dict['rx_gain']) self.assertEqual(conf['rx_gain'], param_dict['rx_gain'])
...@@ -353,6 +359,12 @@ class TestUENRParameters(ORSTestCase): ...@@ -353,6 +359,12 @@ class TestUENRParameters(ORSTestCase):
self.assertEqual(conf['ue_list'][0]['rue_addr'], param_dict['rue_addr']) self.assertEqual(conf['ue_list'][0]['rue_addr'], param_dict['rue_addr'])
self.assertEqual(conf['ue_list'][0]['imsi'], param_dict['imsi']) self.assertEqual(conf['ue_list'][0]['imsi'], param_dict['imsi'])
self.assertEqual(conf['ue_list'][0]['K'], param_dict['k']) self.assertEqual(conf['ue_list'][0]['K'], param_dict['k'])
self.assertEqual(conf['ue_list'][0]['sim_algo'], param_dict['sim_algo'])
self.assertEqual(conf['ue_list'][0]['opc'], param_dict['opc'])
self.assertEqual(conf['ue_list'][0]['amf'], int(param_dict['amf'], 16))
self.assertEqual(conf['ue_list'][0]['sqn'], param_dict['sqn'])
self.assertEqual(conf['ue_list'][0]['impu'], param_dict['impu'])
self.assertEqual(conf['ue_list'][0]['impi'], param_dict['impi'])
self.assertEqual(conf['tx_gain'], param_dict['tx_gain']) self.assertEqual(conf['tx_gain'], param_dict['tx_gain'])
self.assertEqual(conf['rx_gain'], param_dict['rx_gain']) self.assertEqual(conf['rx_gain'], param_dict['rx_gain'])
...@@ -328,6 +328,12 @@ class TestUELTEParameters(ORSTestCase): ...@@ -328,6 +328,12 @@ class TestUELTEParameters(ORSTestCase):
self.assertEqual(conf['ue_list'][0]['rue_addr'], param_dict['rue_addr']) self.assertEqual(conf['ue_list'][0]['rue_addr'], param_dict['rue_addr'])
self.assertEqual(conf['ue_list'][0]['imsi'], param_dict['imsi']) self.assertEqual(conf['ue_list'][0]['imsi'], param_dict['imsi'])
self.assertEqual(conf['ue_list'][0]['K'], param_dict['k']) self.assertEqual(conf['ue_list'][0]['K'], param_dict['k'])
self.assertEqual(conf['ue_list'][0]['sim_algo'], param_dict['sim_algo'])
self.assertEqual(conf['ue_list'][0]['opc'], param_dict['opc'])
self.assertEqual(conf['ue_list'][0]['amf'], int(param_dict['amf'], 16))
self.assertEqual(conf['ue_list'][0]['sqn'], param_dict['sqn'])
self.assertEqual(conf['ue_list'][0]['impu'], param_dict['impu'])
self.assertEqual(conf['ue_list'][0]['impi'], param_dict['impi'])
self.assertEqual(conf['tx_gain'], param_dict['tx_gain']) self.assertEqual(conf['tx_gain'], param_dict['tx_gain'])
self.assertEqual(conf['rx_gain'], param_dict['rx_gain']) self.assertEqual(conf['rx_gain'], param_dict['rx_gain'])
...@@ -353,6 +359,12 @@ class TestUENRParameters(ORSTestCase): ...@@ -353,6 +359,12 @@ class TestUENRParameters(ORSTestCase):
self.assertEqual(conf['ue_list'][0]['rue_addr'], param_dict['rue_addr']) self.assertEqual(conf['ue_list'][0]['rue_addr'], param_dict['rue_addr'])
self.assertEqual(conf['ue_list'][0]['imsi'], param_dict['imsi']) self.assertEqual(conf['ue_list'][0]['imsi'], param_dict['imsi'])
self.assertEqual(conf['ue_list'][0]['K'], param_dict['k']) self.assertEqual(conf['ue_list'][0]['K'], param_dict['k'])
self.assertEqual(conf['ue_list'][0]['sim_algo'], param_dict['sim_algo'])
self.assertEqual(conf['ue_list'][0]['opc'], param_dict['opc'])
self.assertEqual(conf['ue_list'][0]['amf'], int(param_dict['amf'], 16))
self.assertEqual(conf['ue_list'][0]['sqn'], param_dict['sqn'])
self.assertEqual(conf['ue_list'][0]['impu'], param_dict['impu'])
self.assertEqual(conf['ue_list'][0]['impi'], param_dict['impi'])
self.assertEqual(conf['tx_gain'], param_dict['tx_gain']) self.assertEqual(conf['tx_gain'], param_dict['tx_gain'])
self.assertEqual(conf['rx_gain'], param_dict['rx_gain']) self.assertEqual(conf['rx_gain'], param_dict['rx_gain'])
...@@ -328,6 +328,12 @@ class TestUELTEParameters(ORSTestCase): ...@@ -328,6 +328,12 @@ class TestUELTEParameters(ORSTestCase):
self.assertEqual(conf['ue_list'][0]['rue_addr'], param_dict['rue_addr']) self.assertEqual(conf['ue_list'][0]['rue_addr'], param_dict['rue_addr'])
self.assertEqual(conf['ue_list'][0]['imsi'], param_dict['imsi']) self.assertEqual(conf['ue_list'][0]['imsi'], param_dict['imsi'])
self.assertEqual(conf['ue_list'][0]['K'], param_dict['k']) self.assertEqual(conf['ue_list'][0]['K'], param_dict['k'])
self.assertEqual(conf['ue_list'][0]['sim_algo'], param_dict['sim_algo'])
self.assertEqual(conf['ue_list'][0]['opc'], param_dict['opc'])
self.assertEqual(conf['ue_list'][0]['amf'], int(param_dict['amf'], 16))
self.assertEqual(conf['ue_list'][0]['sqn'], param_dict['sqn'])
self.assertEqual(conf['ue_list'][0]['impu'], param_dict['impu'])
self.assertEqual(conf['ue_list'][0]['impi'], param_dict['impi'])
self.assertEqual(conf['tx_gain'], param_dict['tx_gain']) self.assertEqual(conf['tx_gain'], param_dict['tx_gain'])
self.assertEqual(conf['rx_gain'], param_dict['rx_gain']) self.assertEqual(conf['rx_gain'], param_dict['rx_gain'])
...@@ -353,6 +359,12 @@ class TestUENRParameters(ORSTestCase): ...@@ -353,6 +359,12 @@ class TestUENRParameters(ORSTestCase):
self.assertEqual(conf['ue_list'][0]['rue_addr'], param_dict['rue_addr']) self.assertEqual(conf['ue_list'][0]['rue_addr'], param_dict['rue_addr'])
self.assertEqual(conf['ue_list'][0]['imsi'], param_dict['imsi']) self.assertEqual(conf['ue_list'][0]['imsi'], param_dict['imsi'])
self.assertEqual(conf['ue_list'][0]['K'], param_dict['k']) self.assertEqual(conf['ue_list'][0]['K'], param_dict['k'])
self.assertEqual(conf['ue_list'][0]['sim_algo'], param_dict['sim_algo'])
self.assertEqual(conf['ue_list'][0]['opc'], param_dict['opc'])
self.assertEqual(conf['ue_list'][0]['amf'], int(param_dict['amf'], 16))
self.assertEqual(conf['ue_list'][0]['sqn'], param_dict['sqn'])
self.assertEqual(conf['ue_list'][0]['impu'], param_dict['impu'])
self.assertEqual(conf['ue_list'][0]['impi'], param_dict['impi'])
self.assertEqual(conf['tx_gain'], param_dict['tx_gain']) self.assertEqual(conf['tx_gain'], param_dict['tx_gain'])
self.assertEqual(conf['rx_gain'], param_dict['rx_gain']) self.assertEqual(conf['rx_gain'], param_dict['rx_gain'])
...@@ -328,6 +328,12 @@ class TestUELTEParameters(ORSTestCase): ...@@ -328,6 +328,12 @@ class TestUELTEParameters(ORSTestCase):
self.assertEqual(conf['ue_list'][0]['rue_addr'], param_dict['rue_addr']) self.assertEqual(conf['ue_list'][0]['rue_addr'], param_dict['rue_addr'])
self.assertEqual(conf['ue_list'][0]['imsi'], param_dict['imsi']) self.assertEqual(conf['ue_list'][0]['imsi'], param_dict['imsi'])
self.assertEqual(conf['ue_list'][0]['K'], param_dict['k']) self.assertEqual(conf['ue_list'][0]['K'], param_dict['k'])
self.assertEqual(conf['ue_list'][0]['sim_algo'], param_dict['sim_algo'])
self.assertEqual(conf['ue_list'][0]['opc'], param_dict['opc'])
self.assertEqual(conf['ue_list'][0]['amf'], int(param_dict['amf'], 16))
self.assertEqual(conf['ue_list'][0]['sqn'], param_dict['sqn'])
self.assertEqual(conf['ue_list'][0]['impu'], param_dict['impu'])
self.assertEqual(conf['ue_list'][0]['impi'], param_dict['impi'])
self.assertEqual(conf['tx_gain'], param_dict['tx_gain']) self.assertEqual(conf['tx_gain'], param_dict['tx_gain'])
self.assertEqual(conf['rx_gain'], param_dict['rx_gain']) self.assertEqual(conf['rx_gain'], param_dict['rx_gain'])
...@@ -353,6 +359,12 @@ class TestUENRParameters(ORSTestCase): ...@@ -353,6 +359,12 @@ class TestUENRParameters(ORSTestCase):
self.assertEqual(conf['ue_list'][0]['rue_addr'], param_dict['rue_addr']) self.assertEqual(conf['ue_list'][0]['rue_addr'], param_dict['rue_addr'])
self.assertEqual(conf['ue_list'][0]['imsi'], param_dict['imsi']) self.assertEqual(conf['ue_list'][0]['imsi'], param_dict['imsi'])
self.assertEqual(conf['ue_list'][0]['K'], param_dict['k']) self.assertEqual(conf['ue_list'][0]['K'], param_dict['k'])
self.assertEqual(conf['ue_list'][0]['sim_algo'], param_dict['sim_algo'])
self.assertEqual(conf['ue_list'][0]['opc'], param_dict['opc'])
self.assertEqual(conf['ue_list'][0]['amf'], int(param_dict['amf'], 16))
self.assertEqual(conf['ue_list'][0]['sqn'], param_dict['sqn'])
self.assertEqual(conf['ue_list'][0]['impu'], param_dict['impu'])
self.assertEqual(conf['ue_list'][0]['impi'], param_dict['impi'])
self.assertEqual(conf['tx_gain'], param_dict['tx_gain']) self.assertEqual(conf['tx_gain'], param_dict['tx_gain'])
self.assertEqual(conf['rx_gain'], param_dict['rx_gain']) self.assertEqual(conf['rx_gain'], param_dict['rx_gain'])
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment