Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG UE
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Michael Black
OpenXG UE
Commits
4b3ec117
Commit
4b3ec117
authored
Jan 21, 2016
by
Rohit Gupta
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'feature-34-test_framework' into develop
parents
486450bb
02a4c22a
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
1387 additions
and
461 deletions
+1387
-461
cmake_targets/autotests/README.txt
cmake_targets/autotests/README.txt
+36
-25
cmake_targets/autotests/core.py
cmake_targets/autotests/core.py
+2
-1
cmake_targets/autotests/run_exec_lte-softmodem_tests.py
cmake_targets/autotests/run_exec_lte-softmodem_tests.py
+64
-15
cmake_targets/autotests/test_case_list.xml
cmake_targets/autotests/test_case_list.xml
+1267
-416
cmake_targets/autotests/tools/configure_cots_bandrich_ue.py
cmake_targets/autotests/tools/configure_cots_bandrich_ue.py
+15
-3
cmake_targets/autotests/tools/search_repl.py
cmake_targets/autotests/tools/search_repl.py
+3
-1
No files found.
cmake_targets/autotests/README.txt
View file @
4b3ec117
...
@@ -98,43 +98,54 @@ Obj.# Case# Test# Description
...
@@ -98,43 +98,54 @@ Obj.# Case# Test# Description
01 55 lte-softmodem tests with USRP B210 RF as eNB and ALU EPC w/ Bandrich COTS UE for TX/1RX, 2TX/2RX
01 55 lte-softmodem tests with USRP B210 RF as eNB and ALU EPC w/ Bandrich COTS UE for TX/1RX, 2TX/2RX
01 55 00 Band 7 FDD 5MHz UL Throughput for
6
0 sec for 1TX/1RX
01 55 00 Band 7 FDD 5MHz UL Throughput for
30
0 sec for 1TX/1RX
01 55 01 Band 7 FDD 10MHz UL Throughput for
6
0 sec for 1TX/1RX
01 55 01 Band 7 FDD 10MHz UL Throughput for
30
0 sec for 1TX/1RX
01 55 02 Band 7 FDD 20MHz UL Throughput for
6
0 sec for 1TX/1RX
01 55 02 Band 7 FDD 20MHz UL Throughput for
30
0 sec for 1TX/1RX
01 55 03 Band 7 FDD 5MHz DL Throughput for
6
0 sec for 1TX/1RX
01 55 03 Band 7 FDD 5MHz DL Throughput for
30
0 sec for 1TX/1RX
01 55 04 Band 7 FDD 10MHz DL Throughput for
6
0 sec for 1TX/1RX
01 55 04 Band 7 FDD 10MHz DL Throughput for
30
0 sec for 1TX/1RX
01 55 05 Band 7 FDD 20MHz DL Throughput for
6
0 sec for 1TX/1RX
01 55 05 Band 7 FDD 20MHz DL Throughput for
30
0 sec for 1TX/1RX
01 55 06 Band 7 FDD 5MHz UL Throughput for
6
0 sec for 2TX/2RX
01 55 06 Band 7 FDD 5MHz UL Throughput for
30
0 sec for 2TX/2RX
01 55 07 Band 7 FDD 10MHz UL Throughput for
6
0 sec for 2TX/2RX
01 55 07 Band 7 FDD 10MHz UL Throughput for
30
0 sec for 2TX/2RX
01 55 08 Band 7 FDD 20MHz UL Throughput for
6
0 sec for 2TX/2RX
01 55 08 Band 7 FDD 20MHz UL Throughput for
30
0 sec for 2TX/2RX
01 55 09 Band 7 FDD 5MHz DL Throughput for
6
0 sec for 2TX/2RX
01 55 09 Band 7 FDD 5MHz DL Throughput for
30
0 sec for 2TX/2RX
01 55 10 Band 7 FDD 10MHz DL Throughput for
6
0 sec for 2TX/2RX
01 55 10 Band 7 FDD 10MHz DL Throughput for
30
0 sec for 2TX/2RX
01 55 11 Band 7 FDD 20MHz DL Throughput for
6
0 sec for 2TX/2RX
01 55 11 Band 7 FDD 20MHz DL Throughput for
30
0 sec for 2TX/2RX
01 56 lte-softmodem tests with USRP B210 RF as eNB and OAI EPC (eNB and EPC are on same machines) w/ Bandrich COTS UE
01 56 lte-softmodem tests with USRP B210 RF as eNB and OAI EPC (eNB and EPC are on same machines) w/ Bandrich COTS UE
01 56 00 Band 7 FDD 5MHz UL Throughput for 300 sec for 1TX/1RX
01 56 01 Band 7 FDD 10MHz UL Throughput for 300 sec for 1TX/1RX
01 56 02 Band 7 FDD 20MHz UL Throughput for 300 sec for 1TX/1RX
01 56 03 Band 7 FDD 5MHz DL Throughput for 300 sec for 1TX/1RX
01 56 04 Band 7 FDD 10MHz DL Throughput for 300 sec for 1TX/1RX
01 56 05 Band 7 FDD 20MHz DL Throughput for 300 sec for 1TX/1RX
01 57 lte-softmodem tests with USRP B210 RF as eNB and OAI EPC (eNB and EPC are on different machines) w/ Bandrich COTS UE
01 57 lte-softmodem tests with USRP B210 RF as eNB and OAI EPC (eNB and EPC are on different machines) w/ Bandrich COTS UE
01 57 00 Band 7 FDD 5MHz UL Throughput for 300 sec for 1TX/1RX
01 57 01 Band 7 FDD 10MHz UL Throughput for 300 sec for 1TX/1RX
01 57 02 Band 7 FDD 20MHz UL Throughput for 300 sec for 1TX/1RX
01 57 03 Band 7 FDD 5MHz DL Throughput for 300 sec for 1TX/1RX
01 57 04 Band 7 FDD 10MHz DL Throughput for 300 sec for 1TX/1RX
01 57 05 Band 7 FDD 20MHz DL Throughput for 300 sec for 1TX/1RX
01 58 lte-softmodem tests with USRP X310 RF as eNB and ALU EPC w/ Bandrich COTS UE for `TX/1RX, 2TX/2RX
01 58 lte-softmodem tests with USRP X310 RF as eNB and ALU EPC w/ Bandrich COTS UE for `TX/1RX, 2TX/2RX
01 58 00 Band 7 FDD 5MHz UL Throughput for
6
0 sec for 1TX/1RX
01 58 00 Band 7 FDD 5MHz UL Throughput for
30
0 sec for 1TX/1RX
01 58 01 Band 7 FDD 10MHz UL Throughput for
6
0 sec for 1TX/1RX
01 58 01 Band 7 FDD 10MHz UL Throughput for
30
0 sec for 1TX/1RX
01 58 02 Band 7 FDD 20MHz UL Throughput for
6
0 sec for 1TX/1RX
01 58 02 Band 7 FDD 20MHz UL Throughput for
30
0 sec for 1TX/1RX
01 58 03 Band 7 FDD 5MHz DL Throughput for
6
0 sec for 1TX/1RX
01 58 03 Band 7 FDD 5MHz DL Throughput for
30
0 sec for 1TX/1RX
01 58 04 Band 7 FDD 10MHz DL Throughput for
6
0 sec for 1TX/1RX
01 58 04 Band 7 FDD 10MHz DL Throughput for
30
0 sec for 1TX/1RX
01 58 05 Band 7 FDD 20MHz DL Throughput for
6
0 sec for 1TX/1RX
01 58 05 Band 7 FDD 20MHz DL Throughput for
30
0 sec for 1TX/1RX
01 59 lte-softmodem tests with USRP X310 RF as eNB and OAI EPC (eNB and EPC are on same machines) w/ Bandrich COTS UE
01 59 lte-softmodem tests with USRP X310 RF as eNB and OAI EPC (eNB and EPC are on same machines) w/ Bandrich COTS UE
01 61 lte-softmodem tests with USRP X310 RF as eNB and OAI EPC (eNB and EPC are on different machines) w/ Bandrich COTS UE
01 61 lte-softmodem tests with USRP X310 RF as eNB and OAI EPC (eNB and EPC are on different machines) w/ Bandrich COTS UE
01 61 lte-softmodem tests with EXMIMO RF as eNB and ALU EPC w/ Bandrich COTS UE for `TX/1RX, 2TX/2RX
01 61 lte-softmodem tests with EXMIMO RF as eNB and ALU EPC w/ Bandrich COTS UE for `TX/1RX, 2TX/2RX
01 61 00 Band 7 FDD 5MHz UL Throughput for
6
0 sec for 1TX/1RX
01 61 00 Band 7 FDD 5MHz UL Throughput for
30
0 sec for 1TX/1RX
01 61 01 Band 7 FDD 10MHz UL Throughput for
6
0 sec for 1TX/1RX
01 61 01 Band 7 FDD 10MHz UL Throughput for
30
0 sec for 1TX/1RX
01 61 02 Band 7 FDD 20MHz UL Throughput for
6
0 sec for 1TX/1RX
01 61 02 Band 7 FDD 20MHz UL Throughput for
30
0 sec for 1TX/1RX
01 61 03 Band 7 FDD 5MHz DL Throughput for
6
0 sec for 1TX/1RX
01 61 03 Band 7 FDD 5MHz DL Throughput for
30
0 sec for 1TX/1RX
01 61 04 Band 7 FDD 10MHz DL Throughput for
6
0 sec for 1TX/1RX
01 61 04 Band 7 FDD 10MHz DL Throughput for
30
0 sec for 1TX/1RX
01 61 05 Band 7 FDD 20MHz DL Throughput for
6
0 sec for 1TX/1RX
01 61 05 Band 7 FDD 20MHz DL Throughput for
30
0 sec for 1TX/1RX
01 62 lte-softmodem tests with EXMIMO RF as eNB and OAI EPC (eNB and EPC are on same machines) w/ Bandrich COTS UE
01 62 lte-softmodem tests with EXMIMO RF as eNB and OAI EPC (eNB and EPC are on same machines) w/ Bandrich COTS UE
01 63 lte-softmodem tests with EXMIMO RF as eNB and OAI EPC (eNB and EPC are on different machines) w/ Bandrich COTS UE
01 63 lte-softmodem tests with EXMIMO RF as eNB and OAI EPC (eNB and EPC are on different machines) w/ Bandrich COTS UE
...
...
cmake_targets/autotests/core.py
View file @
4b3ec117
...
@@ -192,6 +192,7 @@ class core:
...
@@ -192,6 +192,7 @@ class core:
if
index
==
0
or
index
==
1
:
if
index
==
0
or
index
==
1
:
return
self
.
oai
.
before
return
self
.
oai
.
before
else
:
else
:
print
"command = "
+
command
+
"rsp1 = "
+
rsp1
+
" rsp2 = "
+
rsp2
+
" index = "
+
str
(
index
)
raise
log
.
err
(
self
.
failed
(
command
,
rsp1
+
' or '
+
rsp2
,
debug
))
raise
log
.
err
(
self
.
failed
(
command
,
rsp1
+
' or '
+
rsp2
,
debug
))
...
@@ -240,7 +241,7 @@ class core:
...
@@ -240,7 +241,7 @@ class core:
if
(
rsp
.
find
(
expect
)
==
-
1
):
if
(
rsp
.
find
(
expect
)
==
-
1
):
return
'OK'
return
'OK'
else
:
else
:
print
"command = "
+
c
m
d
+
"expect = "
+
expect
+
"rsp = "
+
rsp
print
"command = "
+
c
omman
d
+
"expect = "
+
expect
+
"rsp = "
+
rsp
raise
log
.
err
(
self
.
failed
(
command
,
expect
,
debug
))
raise
log
.
err
(
self
.
failed
(
command
,
expect
,
debug
))
...
...
cmake_targets/autotests/run_exec_lte-softmodem_tests.py
View file @
4b3ec117
...
@@ -258,17 +258,17 @@ def finalize_deploy_script (timeout_cmd, terminate_missing_procs='True'):
...
@@ -258,17 +258,17 @@ def finalize_deploy_script (timeout_cmd, terminate_missing_procs='True'):
# \param logdirRepo directory of remote repository
# \param logdirRepo directory of remote repository
# \param python_script python script location
# \param python_script python script location
def
update_config_file
(
oai
,
config_string
,
logdirRepo
,
python_script
):
def
update_config_file
(
oai
,
config_string
,
logdirRepo
,
python_script
):
cmd
=
""
if
config_string
:
if
config_string
:
stringArray
=
config_string
.
splitlines
()
stringArray
=
config_string
.
splitlines
()
cmd
=
""
#python_script = '$OPENAIR_DIR/targets/autotests/tools/search_repl.py'
#python_script = '$OPENAIR_DIR/targets/autotests/tools/search_repl.py'
for
string
in
stringArray
:
for
string
in
stringArray
:
#split the string based on space now
#split the string based on space now
string1
=
string
.
split
()
string1
=
string
.
split
()
cmd
=
cmd
+
'python '
+
python_script
+
' '
+
logdirRepo
+
'/'
+
string1
[
0
]
+
' '
+
string1
[
1
]
+
' '
+
string1
[
2
]
+
'
\n
'
cmd
=
cmd
+
'python '
+
python_script
+
' '
+
logdirRepo
+
'/'
+
string1
[
0
]
+
' '
+
string1
[
1
]
+
' '
+
string1
[
2
]
+
'
\n
'
#cmd = cmd + 'perl -p -i -e \'s/'+ string1[1] + '\\s*=\\s*"\\S*"\\s*/' + string1[1] + ' = "' + string1[2] +'"' + '/g\' ' + logdirRepo + '/' +string1[0] + '\n'
#cmd = cmd + 'perl -p -i -e \'s/'+ string1[1] + '\\s*=\\s*"\\S*"\\s*/' + string1[1] + ' = "' + string1[2] +'"' + '/g\' ' + logdirRepo + '/' +string1[0] + '\n'
return
cmd
return
cmd
#result = oai.send_recv(cmd)
#result = oai.send_recv(cmd)
# \brief thread safe sshsession wrapper due to occasional connection issues with ssh
# \brief thread safe sshsession wrapper due to occasional connection issues with ssh
# \param machine name of machine
# \param machine name of machine
...
@@ -323,7 +323,7 @@ def cleanOldPrograms(oai, programList, CleanUpAluLteBox, ExmimoRfStop):
...
@@ -323,7 +323,7 @@ def cleanOldPrograms(oai, programList, CleanUpAluLteBox, ExmimoRfStop):
#result = oai.send_recv(cmd)
#result = oai.send_recv(cmd)
#print result
#print result
result
=
oai
.
send_expect_false
(
cmd
,
'Match found'
,
False
)
result
=
oai
.
send_expect_false
(
cmd
,
'Match found'
,
False
)
print
result
print
"Looking for old programs..."
+
result
res
=
oai
.
send_recv
(
CleanUpAluLteBox
,
True
)
res
=
oai
.
send_recv
(
CleanUpAluLteBox
,
True
)
res
=
oai
.
send_recv
(
ExmimoRfStop
,
False
)
res
=
oai
.
send_recv
(
ExmimoRfStop
,
False
)
...
@@ -359,7 +359,7 @@ class oaiThread (threading.Thread):
...
@@ -359,7 +359,7 @@ class oaiThread (threading.Thread):
except
Exception
,
e
:
except
Exception
,
e
:
error
=
''
error
=
''
error
=
error
+
' In class oaiThread, function: '
+
sys
.
_getframe
().
f_code
.
co_name
+
': *** Caught exception: '
+
str
(
e
.
__class__
)
+
" : "
+
str
(
e
)
error
=
error
+
' In class oaiThread, function: '
+
sys
.
_getframe
().
f_code
.
co_name
+
': *** Caught exception: '
+
str
(
e
.
__class__
)
+
" : "
+
str
(
e
)
error
=
error
+
'
\n
threadID = '
+
str
(
self
.
threadID
)
+
'
\n
threadname = '
+
self
.
threadname
+
'
\n
timeout = '
+
s
elf
.
timeout
+
'
\n
machine = '
+
self
.
machine
+
'
\n
cmd = '
+
self
.
cmd
+
'
\n
timeout = '
+
str
(
self
.
timeout
)
+
'
\n
username = '
+
self
.
username
+
'
\n
'
error
=
error
+
'
\n
threadID = '
+
str
(
self
.
threadID
)
+
'
\n
threadname = '
+
self
.
threadname
+
'
\n
timeout = '
+
s
tr
(
self
.
timeout
)
+
'
\n
machine = '
+
self
.
machine
+
'
\n
cmd = '
+
self
.
cmd
+
'
\n
timeout = '
+
str
(
self
.
timeout
)
+
'
\n
username = '
+
self
.
username
+
'
\n
'
error
=
error
+
traceback
.
format_exc
()
error
=
error
+
traceback
.
format_exc
()
print
error
print
error
...
@@ -548,7 +548,7 @@ def wait_testcaseclass_generic_threads(threadListGeneric, timeout = 1):
...
@@ -548,7 +548,7 @@ def wait_testcaseclass_generic_threads(threadListGeneric, timeout = 1):
# \param CleanupAluLteBox string that contains commands to stop ALU Bell Labs LTEBox (specified in test_case_list.xml)
# \param CleanupAluLteBox string that contains commands to stop ALU Bell Labs LTEBox (specified in test_case_list.xml)
# \param ExmimoRfStop command to stop EXMIMO Card
# \param ExmimoRfStop command to stop EXMIMO Card
# \param nruns_lte-softmodem global parameter to override number of runs (nruns) within the test case
# \param nruns_lte-softmodem global parameter to override number of runs (nruns) within the test case
def
handle_testcaseclass_softmodem
(
testcase
,
oldprogramList
,
logdirOAI5GRepo
,
logdirOpenaircnRepo
,
MachineList
,
user
,
password
,
CleanUpAluLteBox
,
ExmimoRfStop
,
nruns_lte_softmodem
):
def
handle_testcaseclass_softmodem
(
testcase
,
oldprogramList
,
logdirOAI5GRepo
,
logdirOpenaircnRepo
,
MachineList
,
user
,
password
,
CleanUpAluLteBox
,
ExmimoRfStop
,
nruns_lte_softmodem
,
timeout_cmd
):
#We ignore the password sent to this function for secuirity reasons for password present in log files
#We ignore the password sent to this function for secuirity reasons for password present in log files
#It is recommended to add a line in /etc/sudoers that looks something like below. The line below will run sudo without password prompt
#It is recommended to add a line in /etc/sudoers that looks something like below. The line below will run sudo without password prompt
# your_user_name ALL=(ALL:ALL) NOPASSWD: ALL
# your_user_name ALL=(ALL:ALL) NOPASSWD: ALL
...
@@ -558,7 +558,8 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
...
@@ -558,7 +558,8 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
#user = getpass.getuser()
#user = getpass.getuser()
testcasename
=
testcase
.
get
(
'id'
)
testcasename
=
testcase
.
get
(
'id'
)
testcaseclass
=
testcase
.
findtext
(
'class'
,
default
=
''
)
testcaseclass
=
testcase
.
findtext
(
'class'
,
default
=
''
)
timeout_cmd
=
testcase
.
findtext
(
'TimeOut_cmd'
,
default
=
''
)
if
timeout_cmd
==
''
:
timeout_cmd
=
testcase
.
findtext
(
'TimeOut_cmd'
,
default
=
''
)
timeout_cmd
=
int
(
float
(
timeout_cmd
))
timeout_cmd
=
int
(
float
(
timeout_cmd
))
#Timeout_thread is more than that of cmd to have room for compilation time, etc
#Timeout_thread is more than that of cmd to have room for compilation time, etc
timeout_thread
=
timeout_cmd
+
300
timeout_thread
=
timeout_cmd
+
300
...
@@ -580,6 +581,8 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
...
@@ -580,6 +581,8 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
eNB_traffic_exec_args
=
testcase
.
findtext
(
'eNB_traffic_exec_args'
,
default
=
''
)
eNB_traffic_exec_args
=
testcase
.
findtext
(
'eNB_traffic_exec_args'
,
default
=
''
)
eNB_terminate_missing_procs
=
testcase
.
findtext
(
'eNB_terminate_missing_procs'
,
default
=
'True'
)
eNB_terminate_missing_procs
=
testcase
.
findtext
(
'eNB_terminate_missing_procs'
,
default
=
'True'
)
eNB_search_expr_true
=
testcase
.
findtext
(
'eNB_search_expr_true'
,
''
)
eNB_search_expr_true
=
testcase
.
findtext
(
'eNB_search_expr_true'
,
''
)
if
re
.
compile
(
'\w+'
).
match
(
eNB_search_expr_true
)
!=
None
:
eNB_search_expr_true
=
eNB_search_expr_true
+
' duration='
+
str
(
timeout_cmd
-
90
)
+
's'
UEMachine
=
testcase
.
findtext
(
'UE'
,
default
=
''
)
UEMachine
=
testcase
.
findtext
(
'UE'
,
default
=
''
)
UE_config_file
=
testcase
.
findtext
(
'UE_config_file'
,
default
=
''
)
UE_config_file
=
testcase
.
findtext
(
'UE_config_file'
,
default
=
''
)
...
@@ -594,6 +597,8 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
...
@@ -594,6 +597,8 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
UE_terminate_missing_procs
=
testcase
.
findtext
(
'UE_terminate_missing_procs'
,
default
=
'True'
)
UE_terminate_missing_procs
=
testcase
.
findtext
(
'UE_terminate_missing_procs'
,
default
=
'True'
)
UE_search_expr_true
=
testcase
.
findtext
(
'UE_search_expr_true'
,
''
)
UE_search_expr_true
=
testcase
.
findtext
(
'UE_search_expr_true'
,
''
)
UE_stop_script
=
testcase
.
findtext
(
'UE_stop_script'
,
''
)
UE_stop_script
=
testcase
.
findtext
(
'UE_stop_script'
,
''
)
if
re
.
compile
(
'\w+'
).
match
(
UE_search_expr_true
)
!=
None
:
UE_search_expr_true
=
UE_search_expr_true
+
' duration='
+
str
(
timeout_cmd
-
90
)
+
's'
EPCMachine
=
testcase
.
findtext
(
'EPC'
,
default
=
''
)
EPCMachine
=
testcase
.
findtext
(
'EPC'
,
default
=
''
)
EPC_config_file
=
testcase
.
findtext
(
'EPC_config_file'
,
default
=
''
)
EPC_config_file
=
testcase
.
findtext
(
'EPC_config_file'
,
default
=
''
)
...
@@ -612,6 +617,8 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
...
@@ -612,6 +617,8 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
EPC_traffic_exec_args
=
testcase
.
findtext
(
'EPC_traffic_exec_args'
,
default
=
''
)
EPC_traffic_exec_args
=
testcase
.
findtext
(
'EPC_traffic_exec_args'
,
default
=
''
)
EPC_terminate_missing_procs
=
testcase
.
findtext
(
'EPC_terminate_missing_procs'
,
default
=
'True'
)
EPC_terminate_missing_procs
=
testcase
.
findtext
(
'EPC_terminate_missing_procs'
,
default
=
'True'
)
EPC_search_expr_true
=
testcase
.
findtext
(
'EPC_search_expr_true'
,
''
)
EPC_search_expr_true
=
testcase
.
findtext
(
'EPC_search_expr_true'
,
''
)
if
re
.
compile
(
'\w+'
).
match
(
EPC_search_expr_true
)
!=
None
:
EPC_search_expr_true
=
EPC_search_expr_true
+
' duration='
+
str
(
timeout_cmd
-
90
)
+
's'
index_eNBMachine
=
MachineList
.
index
(
eNBMachine
)
index_eNBMachine
=
MachineList
.
index
(
eNBMachine
)
index_UEMachine
=
MachineList
.
index
(
UEMachine
)
index_UEMachine
=
MachineList
.
index
(
UEMachine
)
...
@@ -680,6 +687,10 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
...
@@ -680,6 +687,10 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
logfile_task_eNB_out
=
logdir_eNB
+
'/eNB_task_out'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_task_eNB_out
=
logdir_eNB
+
'/eNB_task_out'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_task_eNB
=
logdir_local_testcase
+
'/eNB_task'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_task_eNB
=
logdir_local_testcase
+
'/eNB_task'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_local_traffic_eNB_out
=
logdir_local_testcase
+
'/eNB_traffic'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_local_traffic_eNB_out
=
logdir_local_testcase
+
'/eNB_traffic'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_tshark_eNB
=
logdir_eNB
+
'/eNB_tshark'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_pcap_eNB
=
logdir_eNB
+
'/eNB_tshark'
+
'_'
+
str
(
run
)
+
'_.pcap'
logfile_pcap_zip_eNB
=
logdir_eNB
+
'/eNB_tshark'
+
'_'
+
str
(
run
)
+
'_.pcap.zip'
logfile_pcap_tmp_eNB
=
'/tmp/'
+
'/eNB_tshark'
+
'_'
+
str
(
run
)
+
'_.pcap'
task_eNB_compile
=
' ( uname -a ; date
\n
'
task_eNB_compile
=
' ( uname -a ; date
\n
'
task_eNB_compile
=
task_eNB_compile
+
'cd '
+
logdirOAI5GRepo
+
' ; source oaienv ; source cmake_targets/tools/build_helper
\n
'
task_eNB_compile
=
task_eNB_compile
+
'cd '
+
logdirOAI5GRepo
+
' ; source oaienv ; source cmake_targets/tools/build_helper
\n
'
...
@@ -701,9 +712,16 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
...
@@ -701,9 +712,16 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
task_eNB
=
task_eNB
+
'array_exec_pid+=($!)
\n
'
task_eNB
=
task_eNB
+
'array_exec_pid+=($!)
\n
'
task_eNB
=
task_eNB
+
'echo eNB_main_exec PID = $!
\n
'
task_eNB
=
task_eNB
+
'echo eNB_main_exec PID = $!
\n
'
if
eNB_traffic_exec
!=
""
:
if
eNB_traffic_exec
!=
""
:
task_eNB
=
task_eNB
+
' (date; '
+
eNB_traffic_exec
+
' '
+
eNB_traffic_exec_args
+
' ) > '
+
logfile_traffic_eNB
+
' 2>&1 &
\n
'
cmd_traffic
=
eNB_traffic_exec
+
' '
+
eNB_traffic_exec_args
if
cmd_traffic
.
find
(
'-c'
)
>=
0
:
cmd_traffic
=
cmd_traffic
+
' -t '
+
str
(
timeout_cmd
-
60
)
task_eNB
=
task_eNB
+
' (date; '
+
cmd_traffic
+
' ) > '
+
logfile_traffic_eNB
+
' 2>&1 &
\n
'
task_eNB
=
task_eNB
+
'array_exec_pid+=($!)
\n
'
task_eNB
=
task_eNB
+
'array_exec_pid+=($!)
\n
'
task_eNB
=
task_eNB
+
'echo eNB_traffic_exec PID = $!
\n
'
task_eNB
=
task_eNB
+
'echo eNB_traffic_exec PID = $!
\n
'
task_eNB
=
task_eNB
+
' (date; sudo rm -f '
+
logfile_pcap_tmp_eNB
+
' ; sudo -E tshark -i any -s 65535 -a duration:'
+
str
(
timeout_cmd
-
10
)
+
' -w '
+
logfile_pcap_tmp_eNB
+
' ; sudo -E chown '
+
user
+
' '
+
logfile_pcap_tmp_eNB
+
' ; zip -j -9 '
+
logfile_pcap_zip_eNB
+
' '
+
logfile_pcap_tmp_eNB
+
' ) > '
+
logfile_tshark_eNB
+
' 2>&1 &
\n
'
task_eNB
=
task_eNB
+
'array_exec_pid+=($!)
\n
'
task_eNB
=
task_eNB
+
'echo eNB_tshark_exec PID = $!
\n
'
#terminate the eNB test case after timeout_cmd seconds
#terminate the eNB test case after timeout_cmd seconds
task_eNB
=
task_eNB
+
finalize_deploy_script
(
timeout_cmd
,
eNB_terminate_missing_procs
)
+
'
\n
'
task_eNB
=
task_eNB
+
finalize_deploy_script
(
timeout_cmd
,
eNB_terminate_missing_procs
)
+
'
\n
'
#task_eNB = task_eNB + 'sleep ' + str(timeout_cmd) + ' \n'
#task_eNB = task_eNB + 'sleep ' + str(timeout_cmd) + ' \n'
...
@@ -747,7 +765,10 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
...
@@ -747,7 +765,10 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
task_UE
=
task_UE
+
'array_exec_pid+=($!)
\n
'
task_UE
=
task_UE
+
'array_exec_pid+=($!)
\n
'
task_UE
=
task_UE
+
'echo UE_main_exec PID = $!
\n
'
task_UE
=
task_UE
+
'echo UE_main_exec PID = $!
\n
'
if
UE_traffic_exec
!=
""
:
if
UE_traffic_exec
!=
""
:
task_UE
=
task_UE
+
' ( date; '
+
UE_traffic_exec
+
' '
+
UE_traffic_exec_args
+
' ) >'
+
logfile_traffic_UE
+
' 2>&1 &
\n
'
cmd_traffic
=
UE_traffic_exec
+
' '
+
UE_traffic_exec_args
if
cmd_traffic
.
find
(
'-c'
)
>=
0
:
cmd_traffic
=
cmd_traffic
+
' -t '
+
str
(
timeout_cmd
-
60
)
task_UE
=
task_UE
+
' ( date; '
+
cmd_traffic
+
' ) >'
+
logfile_traffic_UE
+
' 2>&1 &
\n
'
task_UE
=
task_UE
+
'array_exec_pid+=($!)
\n
'
task_UE
=
task_UE
+
'array_exec_pid+=($!)
\n
'
task_UE
=
task_UE
+
'echo UE_traffic_exec PID = $!
\n
'
task_UE
=
task_UE
+
'echo UE_traffic_exec PID = $!
\n
'
#terminate the UE test case after timeout_cmd seconds
#terminate the UE test case after timeout_cmd seconds
...
@@ -797,7 +818,10 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
...
@@ -797,7 +818,10 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
task_EPC
=
task_EPC
+
'array_exec_pid+=($!)
\n
'
task_EPC
=
task_EPC
+
'array_exec_pid+=($!)
\n
'
task_EPC
=
task_EPC
+
'echo EPC_main_exec PID = $!
\n
'
task_EPC
=
task_EPC
+
'echo EPC_main_exec PID = $!
\n
'
if
EPC_traffic_exec
!=
""
:
if
EPC_traffic_exec
!=
""
:
task_EPC
=
task_EPC
+
'( date; '
+
EPC_traffic_exec
+
' '
+
EPC_traffic_exec_args
+
' ) > '
+
logfile_traffic_EPC
+
' 2>&1 &
\n
'
cmd_traffic
=
EPC_traffic_exec
+
' '
+
EPC_traffic_exec_args
if
cmd_traffic
.
find
(
'-c'
)
>=
0
:
cmd_traffic
=
cmd_traffic
+
' -t '
+
str
(
timeout_cmd
-
60
)
task_EPC
=
task_EPC
+
'( date; '
+
cmd_traffic
+
' ) > '
+
logfile_traffic_EPC
+
' 2>&1 &
\n
'
task_EPC
=
task_EPC
+
'array_exec_pid+=($!)
\n
'
task_EPC
=
task_EPC
+
'array_exec_pid+=($!)
\n
'
task_EPC
=
task_EPC
+
'echo EPC_traffic_exec PID = $!
\n
'
task_EPC
=
task_EPC
+
'echo EPC_traffic_exec PID = $!
\n
'
#terminate the EPC test case after timeout_cmd seconds
#terminate the EPC test case after timeout_cmd seconds
...
@@ -861,6 +885,19 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
...
@@ -861,6 +885,19 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
thread_UE
.
start
()
thread_UE
.
start
()
thread_UE
.
join
()
thread_UE
.
join
()
#Now we change the permissions of the logfiles to avoid some of them being with root permissions
cmd
=
'sudo -E chown -R '
+
user
+
' '
+
logdir_eNB
res
=
oai_eNB
.
send_recv
(
cmd
)
print
"Changing permissions of logdir <"
+
logdir_eNB
+
"> in eNB machine..."
+
res
cmd
=
'sudo -E chown -R '
+
user
+
' '
+
logdir_UE
res
=
oai_UE
.
send_recv
(
cmd
)
print
"Changing permissions of logdir <"
+
logdir_UE
+
"> in UE machine..."
+
res
cmd
=
'sudo -E chown -R '
+
user
+
' '
+
logdir_EPC
res
=
oai_EPC
.
send_recv
(
cmd
)
print
"Changing permissions of logdir <"
+
logdir_EPC
+
"> in EPC machine..."
+
res
print
"Copying files from EPCMachine : "
+
EPCMachine
+
"logdir_EPC = "
+
logdir_EPC
print
"Copying files from EPCMachine : "
+
EPCMachine
+
"logdir_EPC = "
+
logdir_EPC
#ssh = SSHSession(EPCMachine , username=user, key_file=None, password=password)
#ssh = SSHSession(EPCMachine , username=user, key_file=None, password=password)
...
@@ -1019,7 +1056,8 @@ MachineListGeneric=''
...
@@ -1019,7 +1056,8 @@ MachineListGeneric=''
flag_remove_logdir
=
False
flag_remove_logdir
=
False
flag_start_testcase
=
False
flag_start_testcase
=
False
nruns_lte_softmodem
=
''
nruns_lte_softmodem
=
''
flag_skip_git_head_check
=
False
Timeout_cmd
=
''
print
"Number of arguments argc = "
+
str
(
len
(
sys
.
argv
))
print
"Number of arguments argc = "
+
str
(
len
(
sys
.
argv
))
#for index in range(1,len(sys.argv) ):
#for index in range(1,len(sys.argv) ):
# print "argv_" + str(index) + " : " + sys.argv[index]
# print "argv_" + str(index) + " : " + sys.argv[index]
...
@@ -1073,6 +1111,11 @@ while i < len (sys.argv):
...
@@ -1073,6 +1111,11 @@ while i < len (sys.argv):
MachineListGeneric
=
MachineListGeneric
.
replace
(
"
\"
"
,
""
)
MachineListGeneric
=
MachineListGeneric
.
replace
(
"
\"
"
,
""
)
MachineListGeneric
=
MachineListGeneric
.
replace
(
"
\'
"
,
""
)
MachineListGeneric
=
MachineListGeneric
.
replace
(
"
\'
"
,
""
)
i
=
i
+
1
i
=
i
+
1
elif
arg
==
'--skip-git-head-check'
:
flag_skip_git_head_check
=
True
elif
arg
==
'--timeout_cmd'
:
Timeout_cmd
=
sys
.
argv
[
i
+
1
]
i
=
i
+
1
elif
arg
==
'-h'
:
elif
arg
==
'-h'
:
print
"-s: This flag *MUST* be set to start the test cases"
print
"-s: This flag *MUST* be set to start the test cases"
print
"-r: Remove the log directory in autotests"
print
"-r: Remove the log directory in autotests"
...
@@ -1086,6 +1129,8 @@ while i < len (sys.argv):
...
@@ -1086,6 +1129,8 @@ while i < len (sys.argv):
print
"--nrun_lte_softmodem: Set the number of runs for lte-softmodem test case class"
print
"--nrun_lte_softmodem: Set the number of runs for lte-softmodem test case class"
print
"-MachineList : overrides the MachineList parameter in test_case_list.xml"
print
"-MachineList : overrides the MachineList parameter in test_case_list.xml"
print
"-MachineListGeneric : overrides the MachineListGeneric parameter in test_case_list.xml"
print
"-MachineListGeneric : overrides the MachineListGeneric parameter in test_case_list.xml"
print
"--skip-git-head-check: skip checking of GitHead remote/local branch (only for debugging)"
print
"--timeout_cmd: Override the default parameter (timeout_cmd) in test_case_list.xml. This parameter is in seconds and should be > 120"
sys
.
exit
()
sys
.
exit
()
else
:
else
:
print
"Unrecongnized Option: <"
+
arg
+
">. Use -h to see valid options"
print
"Unrecongnized Option: <"
+
arg
+
">. Use -h to see valid options"
...
@@ -1186,6 +1231,7 @@ print "GitOAI5GBranch = " + GitOAI5GRepoBranch
...
@@ -1186,6 +1231,7 @@ print "GitOAI5GBranch = " + GitOAI5GRepoBranch
print
"GitOpenaircnRepoBranch = "
+
GitOpenaircnRepoBranch
print
"GitOpenaircnRepoBranch = "
+
GitOpenaircnRepoBranch
print
"NFSResultsShare = "
+
NFSResultsShare
print
"NFSResultsShare = "
+
NFSResultsShare
print
"nruns_lte_softmodem = "
+
nruns_lte_softmodem
print
"nruns_lte_softmodem = "
+
nruns_lte_softmodem
print
"Timeout_cmd = "
+
Timeout_cmd
if
GitOAI5GHeadVersion
==
''
:
if
GitOAI5GHeadVersion
==
''
:
cmd
=
"git show-ref --heads -s "
+
GitOAI5GRepoBranch
cmd
=
"git show-ref --heads -s "
+
GitOAI5GRepoBranch
...
@@ -1289,7 +1335,10 @@ for oai in oai_list:
...
@@ -1289,7 +1335,10 @@ for oai in oai_list:
cmd
=
cmd
+
'git_head=${git_head[0]}
\n
'
cmd
=
cmd
+
'git_head=${git_head[0]}
\n
'
cmd
=
cmd
+
'echo
\"
GitOAI5GHeadVersion_remote = $git_head
\"
'
cmd
=
cmd
+
'echo
\"
GitOAI5GHeadVersion_remote = $git_head
\"
'
cmd
=
cmd
+
'echo
\"
GitOAI5GHeadVersion_local = '
+
GitOAI5GHeadVersion
+
'
\"
\n
'
cmd
=
cmd
+
'echo
\"
GitOAI5GHeadVersion_local = '
+
GitOAI5GHeadVersion
+
'
\"
\n
'
cmd
=
cmd
+
'if [
\"
$git_head
\"
!=
\"
'
+
GitOAI5GHeadVersion
+
'
\"
]; then echo
\"
error: Git openairinterface5g head version does not match
\"
; fi
\n
'
if
flag_skip_git_head_check
==
True
:
cmd
=
cmd
+
'echo
\"
skipping GitHead check...
\"
\n
'
else
:
cmd
=
cmd
+
'if [
\"
$git_head
\"
!=
\"
'
+
GitOAI5GHeadVersion
+
'
\"
]; then echo
\"
error: Git openairinterface5g head version does not match
\"
; fi
\n
'
cmd
=
cmd
+
'source oaienv'
+
'
\n
'
cmd
=
cmd
+
'source oaienv'
+
'
\n
'
cmd
=
cmd
+
'cd '
+
logdirOpenaircnRepo
+
'
\n
'
cmd
=
cmd
+
'cd '
+
logdirOpenaircnRepo
+
'
\n
'
cmd
=
cmd
+
'git checkout '
+
GitOpenaircnRepoBranch
+
'
\n
'
cmd
=
cmd
+
'git checkout '
+
GitOpenaircnRepoBranch
+
'
\n
'
...
@@ -1375,8 +1424,8 @@ for testcase in testcaseList:
...
@@ -1375,8 +1424,8 @@ for testcase in testcaseList:
print
"eNBMachine : "
+
eNBMachine
+
"UEMachine : "
+
UEMachine
+
"EPCMachine : "
+
EPCMachine
+
"MachineList : "
+
','
.
join
(
MachineList
)
print
"eNBMachine : "
+
eNBMachine
+
"UEMachine : "
+
UEMachine
+
"EPCMachine : "
+
EPCMachine
+
"MachineList : "
+
','
.
join
(
MachineList
)
print
"testcasename = "
+
testcasename
+
" class = "
+
testcaseclass
print
"testcasename = "
+
testcasename
+
" class = "
+
testcaseclass
threadListGlobal
=
wait_testcaseclass_generic_threads
(
threadListGlobal
,
Timeout_execution
)
threadListGlobal
=
wait_testcaseclass_generic_threads
(
threadListGlobal
,
Timeout_execution
)
cleanOldProgramsAllMachines
(
oai_list
,
CleanUpOldProgs
,
CleanUpAluLteBox
,
ExmimoRfStop
)
#
cleanOldProgramsAllMachines(oai_list, CleanUpOldProgs, CleanUpAluLteBox, ExmimoRfStop)
handle_testcaseclass_softmodem
(
testcase
,
CleanUpOldProgs
,
logdirOAI5GRepo
,
logdirOpenaircnRepo
,
MachineList
,
user
,
pw
,
CleanUpAluLteBox
,
ExmimoRfStop
,
nruns_lte_softmodem
)
handle_testcaseclass_softmodem
(
testcase
,
CleanUpOldProgs
,
logdirOAI5GRepo
,
logdirOpenaircnRepo
,
MachineList
,
user
,
pw
,
CleanUpAluLteBox
,
ExmimoRfStop
,
nruns_lte_softmodem
,
Timeout_cmd
)
elif
(
testcaseclass
==
'compilation'
):
elif
(
testcaseclass
==
'compilation'
):
threadListGlobal
=
handle_testcaseclass_generic
(
testcasename
,
threadListGlobal
,
CleanUpOldProgs
,
logdirOAI5GRepo
,
MachineListGeneric
,
user
,
pw
,
CleanUpAluLteBox
,
Timeout_execution
,
ExmimoRfStop
)
threadListGlobal
=
handle_testcaseclass_generic
(
testcasename
,
threadListGlobal
,
CleanUpOldProgs
,
logdirOAI5GRepo
,
MachineListGeneric
,
user
,
pw
,
CleanUpAluLteBox
,
Timeout_execution
,
ExmimoRfStop
)
elif
(
testcaseclass
==
'execution'
):
elif
(
testcaseclass
==
'execution'
):
...
@@ -1412,7 +1461,7 @@ cmd = ' rm -fr ' + NFSTestsResultsDir + ' ; mkdir -p ' + NFSTestsResultsDir
...
@@ -1412,7 +1461,7 @@ cmd = ' rm -fr ' + NFSTestsResultsDir + ' ; mkdir -p ' + NFSTestsResultsDir
res
=
oai_localhost
.
send_recv
(
cmd
)
res
=
oai_localhost
.
send_recv
(
cmd
)
print
"Deleting NFSTestResults Dir..."
+
res
print
"Deleting NFSTestResults Dir..."
+
res
print
"Copying files from GilabCI Runner Machine : "
+
host
+
"locallogdir = "
+
locallogdir
+
", NFSTestsResultsDir = "
+
NFSTestsResultsDir
print
"Copying files from GilabCI Runner Machine : "
+
host
+
"
.
locallogdir = "
+
locallogdir
+
", NFSTestsResultsDir = "
+
NFSTestsResultsDir
SSHSessionWrapper
(
'localhost'
,
user
,
None
,
pw
,
NFSTestsResultsDir
,
locallogdir
,
"put_all"
)
SSHSessionWrapper
(
'localhost'
,
user
,
None
,
pw
,
NFSTestsResultsDir
,
locallogdir
,
"put_all"
)
sys
.
exit
()
sys
.
exit
()
cmake_targets/autotests/test_case_list.xml
View file @
4b3ec117
This source diff could not be displayed because it is too large. You can
view the blob
instead.
cmake_targets/autotests/tools/configure_cots_bandrich_ue.py
View file @
4b3ec117
...
@@ -126,8 +126,8 @@ def start_ue () :
...
@@ -126,8 +126,8 @@ def start_ue () :
break
break
ip
=
IPRoute
()
ip
=
IPRoute
()
idx
=
ip
.
link_lookup
(
ifname
=
iface
)[
0
]
idx
=
ip
.
link_lookup
(
ifname
=
iface
)[
0
]
os
.
system
(
'route add
192.172.0.1
ppp0'
)
os
.
system
(
'route add
'
+
gw
+
'
ppp0'
)
os
.
system
(
'ping
192.172.0.1'
)
os
.
system
(
'ping
'
+
gw
)
break
break
except
Exception
,
e
:
except
Exception
,
e
:
error
=
' Interface '
+
iface
+
'does not exist...'
error
=
' Interface '
+
iface
+
'does not exist...'
...
@@ -188,7 +188,10 @@ def find_usb_path(idVendor, idProduct):
...
@@ -188,7 +188,10 @@ def find_usb_path(idVendor, idProduct):
return
tmpdir
return
tmpdir
return
''
return
''
for
arg
in
sys
.
argv
[
1
:]:
i
=
1
gw
=
'192.172.0.1'
while
i
<
len
(
sys
.
argv
):
arg
=
sys
.
argv
[
i
]
if
arg
==
'--start-ue'
:
if
arg
==
'--start-ue'
:
find_open_port
()
find_open_port
()
print
'Using Serial port : '
+
serial_port
print
'Using Serial port : '
+
serial_port
...
@@ -199,8 +202,17 @@ for arg in sys.argv[1:]:
...
@@ -199,8 +202,17 @@ for arg in sys.argv[1:]:
stop_ue
()
stop_ue
()
elif
arg
==
'--reset-ue'
:
elif
arg
==
'--reset-ue'
:
reset_ue
()
reset_ue
()
elif
arg
==
'-gw'
:
gw
=
sys
.
argv
[
i
+
1
]
i
=
i
+
1
elif
arg
==
'-h'
:
print
"--reset-ue: Reset the UE on USB Bus. Similar to unplugging and plugging the UE"
print
"--stop-ue: Stop the UE. Send DETACH command"
print
"--start-ue: Start the UE. Send ATTACH command"
print
"-gw: Specify the default gw as sometimes the gateway/route arguments are not set properly via wvdial"
else
:
else
:
print
" Script called with wrong arguments, arg = "
+
arg
print
" Script called with wrong arguments, arg = "
+
arg
sys
.
exit
()
sys
.
exit
()
i
=
i
+
1
cmake_targets/autotests/tools/search_repl.py
View file @
4b3ec117
...
@@ -19,9 +19,11 @@ file.close()
...
@@ -19,9 +19,11 @@ file.close()
if
keyword
==
'mme_ip_address'
:
if
keyword
==
'mme_ip_address'
:
#string = (re.sub(r"mme_ip_address\s*=\s*\([^\$]+)\)\s*;\s*", r"<% tex \1 %>", t, re.M)
replacement_text
=
keyword
+
' = ( { '
+
replacement_text
+
' } ) ; '
replacement_text
=
keyword
+
' = ( { '
+
replacement_text
+
' } ) ; '
string
=
re
.
sub
(
r"mme_ip_address\s*=\s*\(([^\$]+?)\)\s*;"
,
replacement_text
,
string
,
re
.
M
)
string
=
re
.
sub
(
r"mme_ip_address\s*=\s*\(([^\$]+?)\)\s*;"
,
replacement_text
,
string
,
re
.
M
)
elif
keyword
==
'IPV4_LIST'
:
replacement_text
=
keyword
+
' = ( '
+
replacement_text
+
' ) ; '
string
=
re
.
sub
(
r"IPV4_LIST\s*=\s*\(([^\$]+?)\)\s*;"
,
replacement_text
,
string
,
re
.
M
)
else
:
else
:
replacement_text
=
keyword
+
' = '
+
replacement_text
+
' ; '
replacement_text
=
keyword
+
' = '
+
replacement_text
+
' ; '
string
=
re
.
sub
(
r"%s\s*=\s*([^\$]+?)\s*;"
%
keyword
,
replacement_text
,
string
,
re
.
M
)
string
=
re
.
sub
(
r"%s\s*=\s*([^\$]+?)\s*;"
%
keyword
,
replacement_text
,
string
,
re
.
M
)
...
...
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