Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG-RAN
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-RAN
Commits
0c8d4323
Commit
0c8d4323
authored
Mar 02, 2016
by
Rohit Gupta
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'feature-34-test_framework' into develop
parents
9ccc1999
24d24f12
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
1441 additions
and
251 deletions
+1441
-251
cmake_targets/autotests/README.txt
cmake_targets/autotests/README.txt
+19
-0
cmake_targets/autotests/run_exec_lte-softmodem_tests.py
cmake_targets/autotests/run_exec_lte-softmodem_tests.py
+81
-19
cmake_targets/autotests/test_case_list.xml
cmake_targets/autotests/test_case_list.xml
+1136
-231
cmake_targets/autotests/tools/configure_cots_bandrich_ue.py
cmake_targets/autotests/tools/configure_cots_bandrich_ue.py
+1
-0
cmake_targets/autotests/tools/configure_cots_huaweiE398_ue.py
...e_targets/autotests/tools/configure_cots_huaweiE398_ue.py
+200
-0
cmake_targets/autotests/tools/search_repl.py
cmake_targets/autotests/tools/search_repl.py
+3
-0
cmake_targets/tools/stop_exmimo2
cmake_targets/tools/stop_exmimo2
+1
-1
No files found.
cmake_targets/autotests/README.txt
View file @
0c8d4323
...
@@ -171,6 +171,25 @@ Obj.# Case# Test# Description
...
@@ -171,6 +171,25 @@ Obj.# Case# Test# Description
01 65 04 Band 7 FDD 10MHz DL Throughput for 300 sec for 1TX/1RX
01 65 04 Band 7 FDD 10MHz DL Throughput for 300 sec for 1TX/1RX
01 65 05 Band 7 FDD 20MHz DL Throughput for 300 sec for 1TX/1RX
01 65 05 Band 7 FDD 20MHz DL Throughput for 300 sec for 1TX/1RX
01 70 00 lte-softmodem tests with SoDeRa RF as eNB and ALU EPC w/ Bandrich COTS UE for TX/1RX
01 70 00 Band 7 FDD 5MHz UL Throughput for 300 sec for 1TX/1RX
01 70 01 Band 7 FDD 10MHz UL Throughput for 300 sec for 1TX/1RX
01 70 02 Band 7 FDD 20MHz UL Throughput for 300 sec for 1TX/1RX
01 70 03 Band 7 FDD 5MHz DL Throughput for 300 sec for 1TX/1RX
01 70 04 Band 7 FDD 10MHz DL Throughput for 300 sec for 1TX/1RX
01 70 05 Band 7 FDD 20MHz DL Throughput for 300 sec for 1TX/1RX
01 75 00 lte-softmodem + RRH tests with B210 RF as eNB and ALU EPC w/ Bandrich COTS UE for TX/1RX
01 75 00 Band 7 FDD 5MHz UL Throughput for 300 sec for 1TX/1RX
01 75 01 Band 7 FDD 10MHz UL Throughput for 300 sec for 1TX/1RX
01 75 02 Band 7 FDD 20MHz UL Throughput for 300 sec for 1TX/1RX
01 75 03 Band 7 FDD 5MHz DL Throughput for 300 sec for 1TX/1RX
01 75 04 Band 7 FDD 10MHz DL Throughput for 300 sec for 1TX/1RX
01 75 05 Band 7 FDD 20MHz DL Throughput for 300 sec for 1TX/1RX
01 64 lte-softmodem-noS1 tests
01 64 lte-softmodem-noS1 tests
02 Functional test case
02 Functional test case
...
...
cmake_targets/autotests/run_exec_lte-softmodem_tests.py
View file @
0c8d4323
...
@@ -571,6 +571,17 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
...
@@ -571,6 +571,17 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
nruns
=
nruns_lte_softmodem
nruns
=
nruns_lte_softmodem
nruns
=
int
(
float
(
nruns
))
nruns
=
int
(
float
(
nruns
))
tags
=
testcase
.
findtext
(
'tags'
,
default
=
''
)
tags
=
testcase
.
findtext
(
'tags'
,
default
=
''
)
RRHMachine
=
testcase
.
findtext
(
'RRH'
,
default
=
''
)
RRH_compile_prog
=
testcase
.
findtext
(
'RRH_compile_prog'
,
default
=
''
)
RRH_compile_prog_args
=
testcase
.
findtext
(
'RRH_compile_prog_args'
,
default
=
''
)
RRH_pre_exec
=
testcase
.
findtext
(
'RRH_pre_exec'
,
default
=
''
)
RRH_pre_exec_args
=
testcase
.
findtext
(
'RRH_pre_exec_args'
,
default
=
''
)
RRH_main_exec
=
testcase
.
findtext
(
'RRH_main_exec'
,
default
=
''
)
RRH_main_exec_args
=
testcase
.
findtext
(
'RRH_main_exec_args'
,
default
=
''
)
RRH_terminate_missing_procs
=
testcase
.
findtext
(
'RRH_terminate_missing_procs'
,
default
=
'True'
)
eNBMachine
=
testcase
.
findtext
(
'eNB'
,
default
=
''
)
eNBMachine
=
testcase
.
findtext
(
'eNB'
,
default
=
''
)
eNB_config_file
=
testcase
.
findtext
(
'eNB_config_file'
,
default
=
''
)
eNB_config_file
=
testcase
.
findtext
(
'eNB_config_file'
,
default
=
''
)
eNB_compile_prog
=
testcase
.
findtext
(
'eNB_compile_prog'
,
default
=
''
)
eNB_compile_prog
=
testcase
.
findtext
(
'eNB_compile_prog'
,
default
=
''
)
...
@@ -635,13 +646,15 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
...
@@ -635,13 +646,15 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
oai_EPC
=
openair
(
'localdomain'
,
EPCMachine
)
oai_EPC
=
openair
(
'localdomain'
,
EPCMachine
)
oai_EPC
.
connect
(
user
,
password
)
oai_EPC
.
connect
(
user
,
password
)
res
=
oai_eNB
.
send_recv
(
cmd
)
res
=
oai_eNB
.
send_recv
(
cmd
)
if
RRHMachine
!=
''
:
cmd
=
'cd '
+
logdirOAI5GRepo
+
'; source oaienv ; env|grep OPENAIR'
index_RRHMachine
=
MachineList
.
index
(
RRHMachine
)
oai_RRH
=
openair
(
'localdomain'
,
RRHMachine
)
oai_RRH
.
connect
(
user
,
password
)
res
=
oai_RRH
.
send_recv
(
cmd
)
#cleanOldPrograms(oai_eNB, oldprogramList, CleanUpAluLteBox, ExmimoRfStop)
#cleanOldPrograms(oai_eNB, oldprogramList, CleanUpAluLteBox, ExmimoRfStop)
#cleanOldPrograms(oai_UE, oldprogramList, CleanUpAluLteBox, ExmimoRfStop)
#cleanOldPrograms(oai_UE, oldprogramList, CleanUpAluLteBox, ExmimoRfStop)
#cleanOldPrograms(oai_EPC, oldprogramList, CleanUpAluLteBox, ExmimoRfStop)
#cleanOldPrograms(oai_EPC, oldprogramList, CleanUpAluLteBox, ExmimoRfStop)
logdir_eNB
=
logdirOAI5GRepo
+
'/cmake_targets/autotests/log/'
+
testcasename
logdir_UE
=
logdirOAI5GRepo
+
'/cmake_targets/autotests/log/'
+
testcasename
logdir_EPC
=
logdirOpenaircnRepo
+
'/TEST/autotests/log/'
+
testcasename
logdir_local
=
os
.
environ
.
get
(
'OPENAIR_DIR'
)
logdir_local
=
os
.
environ
.
get
(
'OPENAIR_DIR'
)
if
logdir_local
is
None
:
if
logdir_local
is
None
:
print
"Environment variable OPENAIR_DIR not set correctly"
print
"Environment variable OPENAIR_DIR not set correctly"
...
@@ -667,10 +680,14 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
...
@@ -667,10 +680,14 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
run_result
=
1
run_result
=
1
run_result_string
=
''
run_result_string
=
''
logdir_eNB
=
logdirOAI5GRepo
+
'/cmake_targets/autotests/log/'
+
testcasename
+
'/run_'
+
str
(
run
)
logdir_eNB
=
logdirOAI5GRepo
+
'/cmake_targets/autotests/log/'
+
testcasename
+
'/run_'
+
str
(
run
)
logdir_RRH
=
logdirOAI5GRepo
+
'/cmake_targets/autotests/log/'
+
testcasename
+
'/run_'
+
str
(
run
)
logdir_UE
=
logdirOAI5GRepo
+
'/cmake_targets/autotests/log/'
+
testcasename
+
'/run_'
+
str
(
run
)
logdir_UE
=
logdirOAI5GRepo
+
'/cmake_targets/autotests/log/'
+
testcasename
+
'/run_'
+
str
(
run
)
logdir_EPC
=
logdirOpenaircnRepo
+
'/TEST/autotests/log/'
+
testcasename
+
'/run_'
+
str
(
run
)
logdir_EPC
=
logdirOpenaircnRepo
+
'/TEST/autotests/log/'
+
testcasename
+
'/run_'
+
str
(
run
)
logdir_local_testcase
=
logdir_local
+
'/cmake_targets/autotests/log/'
+
testcasename
+
'/run_'
+
str
(
run
)
logdir_local_testcase
=
logdir_local
+
'/cmake_targets/autotests/log/'
+
testcasename
+
'/run_'
+
str
(
run
)
#Make the log directory of test case
#Make the log directory of test case
if
RRHMachine
!=
''
:
cmd
=
'rm -fr '
+
logdir_RRH
+
' ; mkdir -p '
+
logdir_RRH
result
=
oai_RRH
.
send_recv
(
cmd
)
cmd
=
'rm -fr '
+
logdir_eNB
+
' ; mkdir -p '
+
logdir_eNB
cmd
=
'rm -fr '
+
logdir_eNB
+
' ; mkdir -p '
+
logdir_eNB
result
=
oai_eNB
.
send_recv
(
cmd
)
result
=
oai_eNB
.
send_recv
(
cmd
)
cmd
=
'rm -fr '
+
logdir_UE
+
' ; mkdir -p '
+
logdir_UE
cmd
=
'rm -fr '
+
logdir_UE
+
' ; mkdir -p '
+
logdir_UE
...
@@ -679,6 +696,39 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
...
@@ -679,6 +696,39 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
result
=
oai_EPC
.
send_recv
(
cmd
)
result
=
oai_EPC
.
send_recv
(
cmd
)
cmd
=
' rm -fr '
+
logdir_local_testcase
+
' ; mkdir -p '
+
logdir_local_testcase
cmd
=
' rm -fr '
+
logdir_local_testcase
+
' ; mkdir -p '
+
logdir_local_testcase
result
=
os
.
system
(
cmd
)
result
=
os
.
system
(
cmd
)
if
RRHMachine
!=
''
:
logfile_compile_RRH
=
logdir_RRH
+
'/RRH_compile'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_exec_RRH
=
logdir_RRH
+
'/RRH_exec'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_pre_exec_RRH
=
logdir_RRH
+
'/RRH_pre_exec'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_task_RRH_compile_out
=
logdir_RRH
+
'/RRH_task_compile_out'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_task_RRH_compile
=
logdir_local_testcase
+
'/RRH_task_compile'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_task_RRH_out
=
logdir_RRH
+
'/RRH_task_out'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_task_RRH
=
logdir_local_testcase
+
'/RRH_task'
+
'_'
+
str
(
run
)
+
'_.log'
task_RRH_compile
=
' ( uname -a ; date
\n
'
task_RRH_compile
=
task_RRH_compile
+
'cd '
+
logdirOAI5GRepo
+
' ; source oaienv ; source cmake_targets/tools/build_helper
\n
'
task_RRH_compile
=
task_RRH_compile
+
'env |grep OPENAIR
\n
'
if
RRH_compile_prog
!=
""
:
task_RRH_compile
=
task_RRH_compile
+
' ( '
+
RRH_compile_prog
+
' '
+
RRH_compile_prog_args
+
' ) > '
+
logfile_compile_RRH
+
' 2>&1
\n
'
task_RRH_compile
=
task_RRH_compile
+
' date ) > '
+
logfile_task_RRH_compile_out
+
' 2>&1 '
write_file
(
logfile_task_RRH_compile
,
task_RRH_compile
,
mode
=
"w"
)
task_RRH
=
' ( uname -a ; date
\n
'
task_RRH
=
task_RRH
+
' export OPENAIR_TESTDIR='
+
logdir_RRH
+
'
\n
'
task_RRH
=
task_RRH
+
'cd '
+
logdirOAI5GRepo
+
' ; source oaienv ; source cmake_targets/tools/build_helper
\n
'
task_RRH
=
task_RRH
+
'env |grep OPENAIR
\n
'
+
'array_exec_pid=()
\n
'
if
RRH_pre_exec
!=
""
:
task_RRH
=
task_RRH
+
' ( date; '
+
RRH_pre_exec
+
' '
+
RRH_pre_exec_args
+
' ) > '
+
logfile_pre_exec_RRH
+
' 2>&1
\n
'
if
RRH_main_exec
!=
""
:
task_RRH
=
task_RRH
+
' ( date; '
+
addsudo
(
RRH_main_exec
+
' '
+
RRH_main_exec_args
,
mypassword
)
+
' ) > '
+
logfile_exec_RRH
+
' 2>&1 &
\n
'
task_RRH
=
task_RRH
+
'array_exec_pid+=($!)
\n
'
task_RRH
=
task_RRH
+
'echo eNB_main_exec PID = $!
\n
'
#terminate the eNB test case after timeout_cmd seconds
task_RRH
=
task_RRH
+
finalize_deploy_script
(
timeout_cmd
,
RRH_terminate_missing_procs
)
+
'
\n
'
task_RRH
=
task_RRH
+
'handle_ctrl_c'
+
'
\n
'
task_RRH
=
task_RRH
+
' ) > '
+
logfile_task_RRH_out
+
' 2>&1 '
write_file
(
logfile_task_RRH
,
task_RRH
,
mode
=
"w"
)
logfile_compile_eNB
=
logdir_eNB
+
'/eNB_compile'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_compile_eNB
=
logdir_eNB
+
'/eNB_compile'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_exec_eNB
=
logdir_eNB
+
'/eNB_exec'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_exec_eNB
=
logdir_eNB
+
'/eNB_exec'
+
'_'
+
str
(
run
)
+
'_.log'
...
@@ -704,6 +754,7 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
...
@@ -704,6 +754,7 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
write_file
(
logfile_task_eNB_compile
,
task_eNB_compile
,
mode
=
"w"
)
write_file
(
logfile_task_eNB_compile
,
task_eNB_compile
,
mode
=
"w"
)
task_eNB
=
' ( uname -a ; date
\n
'
task_eNB
=
' ( uname -a ; date
\n
'
task_eNB
=
task_eNB
+
' export OPENAIR_TESTDIR='
+
logdir_eNB
+
'
\n
'
task_eNB
=
task_eNB
+
'cd '
+
logdirOAI5GRepo
+
' ; source oaienv ; source cmake_targets/tools/build_helper
\n
'
task_eNB
=
task_eNB
+
'cd '
+
logdirOAI5GRepo
+
' ; source oaienv ; source cmake_targets/tools/build_helper
\n
'
task_eNB
=
task_eNB
+
'env |grep OPENAIR
\n
'
+
'array_exec_pid=()
\n
'
task_eNB
=
task_eNB
+
'env |grep OPENAIR
\n
'
+
'array_exec_pid=()
\n
'
...
@@ -806,6 +857,7 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
...
@@ -806,6 +857,7 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
write_file
(
logfile_task_EPC_compile
,
task_EPC_compile
,
mode
=
"w"
)
write_file
(
logfile_task_EPC_compile
,
task_EPC_compile
,
mode
=
"w"
)
task_EPC
=
' ( uname -a ; date
\n
'
task_EPC
=
' ( uname -a ; date
\n
'
task_EPC
=
task_EPC
+
' export OPENAIRCN_TESTDIR='
+
logdir_EPC
+
'
\n
'
task_EPC
=
task_EPC
+
'array_exec_pid=()'
+
'
\n
'
task_EPC
=
task_EPC
+
'array_exec_pid=()'
+
'
\n
'
task_EPC
=
task_EPC
+
'cd '
+
logdirOpenaircnRepo
+
'; source oaienv
\n
'
task_EPC
=
task_EPC
+
'cd '
+
logdirOpenaircnRepo
+
'; source oaienv
\n
'
task_EPC
=
task_EPC
+
'source BUILD/TOOLS/build_helper
\n
'
task_EPC
=
task_EPC
+
'source BUILD/TOOLS/build_helper
\n
'
...
@@ -837,14 +889,20 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
...
@@ -837,14 +889,20 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
thread_EPC
=
oaiThread
(
1
,
"EPC_thread"
,
EPCMachine
,
user
,
password
,
task_EPC_compile
,
False
,
timeout_thread
)
thread_EPC
=
oaiThread
(
1
,
"EPC_thread"
,
EPCMachine
,
user
,
password
,
task_EPC_compile
,
False
,
timeout_thread
)
thread_eNB
=
oaiThread
(
2
,
"eNB_thread"
,
eNBMachine
,
user
,
password
,
task_eNB_compile
,
False
,
timeout_thread
)
thread_eNB
=
oaiThread
(
2
,
"eNB_thread"
,
eNBMachine
,
user
,
password
,
task_eNB_compile
,
False
,
timeout_thread
)
thread_UE
=
oaiThread
(
3
,
"UE_thread"
,
UEMachine
,
user
,
password
,
task_UE_compile
,
False
,
timeout_thread
)
thread_UE
=
oaiThread
(
3
,
"UE_thread"
,
UEMachine
,
user
,
password
,
task_UE_compile
,
False
,
timeout_thread
)
if
RRHMachine
!=
''
:
thread_RRH
=
oaiThread
(
4
,
"RRH_thread"
,
RRHMachine
,
user
,
password
,
task_RRH_compile
,
False
,
timeout_thread
)
threads
=
[]
threads
=
[]
threads
.
append
(
thread_eNB
)
threads
.
append
(
thread_eNB
)
threads
.
append
(
thread_UE
)
threads
.
append
(
thread_UE
)
threads
.
append
(
thread_EPC
)
threads
.
append
(
thread_EPC
)
if
RRHMachine
!=
''
:
threads
.
append
(
thread_RRH
)
# Start new Threads
# Start new Threads
thread_eNB
.
start
()
thread_eNB
.
start
()
thread_UE
.
start
()
thread_UE
.
start
()
thread_EPC
.
start
()
thread_EPC
.
start
()
if
RRHMachine
!=
''
:
thread_RRH
.
start
()
#Wait for all the compile threads to complete
#Wait for all the compile threads to complete
for
t
in
threads
:
for
t
in
threads
:
t
.
join
()
t
.
join
()
...
@@ -853,26 +911,29 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
...
@@ -853,26 +911,29 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
thread_EPC
=
oaiThread
(
1
,
"EPC_thread"
,
EPCMachine
,
user
,
password
,
task_EPC
,
False
,
timeout_thread
)
thread_EPC
=
oaiThread
(
1
,
"EPC_thread"
,
EPCMachine
,
user
,
password
,
task_EPC
,
False
,
timeout_thread
)
thread_eNB
=
oaiThread
(
2
,
"eNB_thread"
,
eNBMachine
,
user
,
password
,
task_eNB
,
False
,
timeout_thread
)
thread_eNB
=
oaiThread
(
2
,
"eNB_thread"
,
eNBMachine
,
user
,
password
,
task_eNB
,
False
,
timeout_thread
)
thread_UE
=
oaiThread
(
3
,
"UE_thread"
,
UEMachine
,
user
,
password
,
task_UE
,
False
,
timeout_thread
)
thread_UE
=
oaiThread
(
3
,
"UE_thread"
,
UEMachine
,
user
,
password
,
task_UE
,
False
,
timeout_thread
)
if
RRHMachine
!=
''
:
thread_RRH
=
oaiThread
(
4
,
"RRH_thread"
,
RRHMachine
,
user
,
password
,
task_RRH
,
False
,
timeout_thread
)
threads
=
[]
threads
=
[]
threads
.
append
(
thread_eNB
)
threads
.
append
(
thread_eNB
)
threads
.
append
(
thread_UE
)
threads
.
append
(
thread_UE
)
threads
.
append
(
thread_EPC
)
threads
.
append
(
thread_EPC
)
if
RRHMachine
!=
''
:
threads
.
append
(
thread_RRH
)
# Start new Threads
# Start new Threads
thread_eNB
.
start
()
thread_eNB
.
start
()
thread_UE
.
start
()
thread_UE
.
start
()
thread_EPC
.
start
()
thread_EPC
.
start
()
if
RRHMachine
!=
''
:
thread_RRH
.
start
()
#Wait for all the compile threads to complete
#Wait for all the compile threads to complete
for
t
in
threads
:
for
t
in
threads
:
t
.
join
()
t
.
join
()
#Now we get the log files from remote machines on the local machine
#Now we get the log files from remote machines on the local machine
cleanOldProgramsAllMachines
([
oai_eNB
,
oai_UE
,
oai_EPC
]
,
oldprogramList
,
CleanUpAluLteBox
,
ExmimoRfStop
)
if
RRHMachine
!=
''
:
cleanOldProgramsAllMachines
([
oai_eNB
,
oai_UE
,
oai_EPC
,
oai_RRH
]
,
oldprogramList
,
CleanUpAluLteBox
,
ExmimoRfStop
)
#cleanOldPrograms(oai_eNB, oldprogramList, CleanUpAluLteBox, ExmimoRfStop)
else
:
#cleanOldPrograms(oai_UE, oldprogramList, CleanUpAluLteBox, ExmimoRfStop)
cleanOldProgramsAllMachines
([
oai_eNB
,
oai_UE
,
oai_EPC
]
,
oldprogramList
,
CleanUpAluLteBox
,
ExmimoRfStop
)
#cleanOldPrograms(oai_EPC, oldprogramList, CleanUpAluLteBox, ExmimoRfStop)
logfile_UE_stop_script_out
=
logdir_UE
+
'/UE_stop_script_out'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_UE_stop_script_out
=
logdir_UE
+
'/UE_stop_script_out'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_UE_stop_script
=
logdir_local_testcase
+
'/UE_stop_script'
+
'_'
+
str
(
run
)
+
'_.log'
logfile_UE_stop_script
=
logdir_local_testcase
+
'/UE_stop_script'
+
'_'
+
str
(
run
)
+
'_.log'
...
@@ -900,22 +961,23 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
...
@@ -900,22 +961,23 @@ def handle_testcaseclass_softmodem (testcase, oldprogramList, logdirOAI5GRepo ,
res
=
oai_EPC
.
send_recv
(
cmd
)
res
=
oai_EPC
.
send_recv
(
cmd
)
print
"Changing permissions of logdir <"
+
logdir_EPC
+
"> in EPC machine..."
+
res
print
"Changing permissions of logdir <"
+
logdir_EPC
+
"> in EPC machine..."
+
res
if
RRHMachine
!=
''
:
cmd
=
'sudo -E chown -R '
+
user
+
' '
+
logdir_RRH
res
=
oai_RRH
.
send_recv
(
cmd
)
print
"Changing permissions of logdir <"
+
logdir_RRH
+
"> in RRH 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.get_all(logdir_EPC , logdir_local + '/cmake_targets/autotests/log/'+ testcasename)
SSHSessionWrapper
(
EPCMachine
,
user
,
None
,
password
,
logdir_EPC
,
logdir_local
+
'/cmake_targets/autotests/log/'
+
testcasename
,
"get_all"
)
SSHSessionWrapper
(
EPCMachine
,
user
,
None
,
password
,
logdir_EPC
,
logdir_local
+
'/cmake_targets/autotests/log/'
+
testcasename
,
"get_all"
)
print
"Copying files from eNBMachine "
+
eNBMachine
+
"logdir_eNB = "
+
logdir_eNB
print
"Copying files from eNBMachine "
+
eNBMachine
+
"logdir_eNB = "
+
logdir_eNB
#ssh = SSHSession(eNBMachine , username=user, key_file=None, password=password)
#ssh.get_all(logdir_eNB, logdir_local + '/cmake_targets/autotests/log/'+ testcasename)
SSHSessionWrapper
(
eNBMachine
,
user
,
None
,
password
,
logdir_eNB
,
logdir_local
+
'/cmake_targets/autotests/log/'
+
testcasename
,
"get_all"
)
SSHSessionWrapper
(
eNBMachine
,
user
,
None
,
password
,
logdir_eNB
,
logdir_local
+
'/cmake_targets/autotests/log/'
+
testcasename
,
"get_all"
)
print
"Copying files from UEMachine : "
+
UEMachine
+
"logdir_UE = "
+
logdir_UE
print
"Copying files from UEMachine : "
+
UEMachine
+
"logdir_UE = "
+
logdir_UE
#ssh = SSHSession(UEMachine , username=user, key_file=None, password=password)
#ssh.get_all(logdir_UE , logdir_local + '/cmake_targets/autotests/log/'+ testcasename)
SSHSessionWrapper
(
UEMachine
,
user
,
None
,
password
,
logdir_UE
,
logdir_local
+
'/cmake_targets/autotests/log/'
+
testcasename
,
"get_all"
)
SSHSessionWrapper
(
UEMachine
,
user
,
None
,
password
,
logdir_UE
,
logdir_local
+
'/cmake_targets/autotests/log/'
+
testcasename
,
"get_all"
)
if
RRHMachine
!=
''
:
print
"Copying files from RRHMachine : "
+
RRHMachine
+
"logdir_RRH = "
+
logdir_RRH
SSHSessionWrapper
(
RRHMachine
,
user
,
None
,
password
,
logdir_RRH
,
logdir_local
+
'/cmake_targets/autotests/log/'
+
testcasename
,
"get_all"
)
#Currently we only perform throughput tests
#Currently we only perform throughput tests
...
@@ -1017,8 +1079,8 @@ class oaiCleanOldProgramThread (threading.Thread):
...
@@ -1017,8 +1079,8 @@ class oaiCleanOldProgramThread (threading.Thread):
error
=
error
+
'
\n
threadID = '
+
str
(
self
.
threadID
)
+
'
\n
threadname = '
+
self
.
threadname
+
'
\n
CleanUpOldProgs = '
+
self
.
CleanUpOldProgs
+
'
\n
CleanUpAluLteBox = '
+
self
.
CleanUpAluLteBox
+
'
\n
ExmimoRfStop = '
+
self
.
ExmimoRfStop
+
'
\n
'
error
=
error
+
'
\n
threadID = '
+
str
(
self
.
threadID
)
+
'
\n
threadname = '
+
self
.
threadname
+
'
\n
CleanUpOldProgs = '
+
self
.
CleanUpOldProgs
+
'
\n
CleanUpAluLteBox = '
+
self
.
CleanUpAluLteBox
+
'
\n
ExmimoRfStop = '
+
self
.
ExmimoRfStop
+
'
\n
'
error
=
error
+
traceback
.
format_exc
()
error
=
error
+
traceback
.
format_exc
()
print
error
print
error
print
"There is error in cleaning up old programs.
The test case execution cannot continue
...."
print
"There is error in cleaning up old programs....."
sys
.
exit
(
1
)
#
sys.exit(1)
# \brief Run parallel threads in all machines for clean up old execution of test cases
# \brief Run parallel threads in all machines for clean up old execution of test cases
# \param oai_list list of handlers that can be used to execute programs on remote machines
# \param oai_list list of handlers that can be used to execute programs on remote machines
...
...
cmake_targets/autotests/test_case_list.xml
View file @
0c8d4323
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 @
0c8d4323
...
@@ -131,6 +131,7 @@ def start_ue () :
...
@@ -131,6 +131,7 @@ def start_ue () :
ip
=
IPRoute
()
ip
=
IPRoute
()
idx
=
ip
.
link_lookup
(
ifname
=
iface
)[
0
]
idx
=
ip
.
link_lookup
(
ifname
=
iface
)[
0
]
os
.
system
(
'route add '
+
gw
+
' ppp0'
)
os
.
system
(
'route add '
+
gw
+
' ppp0'
)
os
.
system
(
'sleep 5'
)
os
.
system
(
'ping '
+
gw
)
os
.
system
(
'ping '
+
gw
)
break
break
except
Exception
,
e
:
except
Exception
,
e
:
...
...
cmake_targets/autotests/tools/configure_cots_huaweiE398_ue.py
0 → 100755
View file @
0c8d4323
#!/usr/bin/python
import
time
import
serial
import
os
from
pyroute2
import
IPRoute
import
sys
import
re
import
threading
import
signal
import
traceback
import
os
import
commands
# configure the serial connections (the parameters differs on the device you are connecting to)
#First we find an open port to work with
serial_port
=
''
ser
=
serial
.
Serial
()
openair_dir
=
os
.
environ
.
get
(
'OPENAIR_DIR'
)
if
openair_dir
==
None
:
print
"Error getting OPENAIR_DIR environment variable"
sys
.
exit
(
1
)
sys
.
path
.
append
(
os
.
path
.
expandvars
(
'$OPENAIR_DIR/cmake_targets/autotests/tools/'
))
from
lib_autotest
import
*
def
find_open_port
():
global
serial_port
,
ser
max_ports
=
100
if
os
.
path
.
exists
(
serial_port
)
==
True
:
return
serial_port
for
port
in
range
(
0
,
100
):
serial_port
=
'/dev/ttyUSB'
+
str
(
port
)
if
os
.
path
.
exists
(
serial_port
)
==
True
:
print
'New Serial Port : '
+
serial_port
break
ser
=
serial
.
Serial
(
port
=
serial_port
)
return
#serial_port = '/dev/ttyUSB2'
bandrich_ppd_config
=
os
.
environ
.
get
(
'OPENAIR_DIR'
)
+
'/cmake_targets/autotests/tools/wdial.bandrich.conf'
exit_flag
=
0
def
signal_handler
(
signal
,
frame
):
print
(
'You pressed Ctrl+C!'
)
print
(
'Resetting the UE to detached state'
)
timeout
=
10
exit_flag
=
1
send_command
(
'AT+CGATT=0'
,
'OK'
,
timeout
)
sys
.
exit
(
0
)
signal
.
signal
(
signal
.
SIGINT
,
signal_handler
)
#ser.open()
#ser.isOpen()
class
pppThread
(
threading
.
Thread
):
def
__init__
(
self
,
threadID
,
name
,
counter
):
threading
.
Thread
.
__init__
(
self
)
self
.
threadID
=
threadID
self
.
name
=
name
self
.
counter
=
counter
def
run
(
self
):
print
"Starting "
+
self
.
name
#Here we keep running pppd thread in indefinite loop as this script terminates sometimes
#while 1:
while
1
:
time
.
sleep
(
5
)
#Hard coded, do not reduce this number!
print
"Starting wvdial now..."
print
'exit_flag = '
+
str
(
exit_flag
)
send_command
(
'AT+CGATT=1'
,
'OK'
,
300
)
os
.
system
(
'wvdial -C '
+
bandrich_ppd_config
+
''
)
if
exit_flag
==
1
:
print
"Exit flag set to true. Exiting pppThread now"
print
"Terminating wvdial now..."
def
send_command
(
cmd
,
response
,
timeout
):
count
=
0
sleep_duration
=
1
print
'In function: send_command: cmd = <'
+
cmd
+
'> response: <'
+
response
+
'>
\n
'
global
serial_port
,
ser
while
count
<=
timeout
:
try
:
#Sometimes the port does not exist coz of reset in modem.
#In that case, we need to search for this port again
if
os
.
path
.
exists
(
serial_port
)
==
False
:
find_open_port
()
ser
.
write
(
cmd
+
'
\r\n
'
)
out
=
''
time
.
sleep
(
sleep_duration
)
count
=
count
+
sleep_duration
while
ser
.
inWaiting
()
>
0
:
out
+=
ser
.
read
(
1
)
print
'out = <'
+
out
+
'> response = <'
+
response
+
'>
\n
'
if
re
.
search
(
response
,
out
):
break
except
Exception
,
e
:
error
=
' cmd : '
+
cmd
+
' response : '
+
response
error
=
error
+
' In function: '
+
sys
.
_getframe
().
f_code
.
co_name
+
': *** Caught exception: '
+
str
(
e
.
__class__
)
+
" : "
+
str
(
e
)
error
=
error
+
traceback
.
format_exc
()
print
error
def
start_ue
()
:
#print 'Enter your commands below.\r\nInsert "exit" to leave the application.'
timeout
=
60
#timeout in seconds
send_command
(
'AT'
,
'OK'
,
timeout
)
#send_command('AT+CFUN=1' , 'OK' , timeout)
#send_command('AT+CGATT=0' , 'OK' , timeout)
send_command
(
'AT+CGATT=1'
,
'OK'
,
300
)
#os.system('wvdial -C ' + bandrich_ppd_config + ' &' )
thread_ppp
=
pppThread
(
1
,
"ppp_thread"
,
1
)
thread_ppp
.
start
()
iface
=
'ppp0'
while
1
:
time
.
sleep
(
2
)
#Now we check if ppp0 interface is up and running
try
:
if
exit_flag
==
1
:
break
ip
=
IPRoute
()
idx
=
ip
.
link_lookup
(
ifname
=
iface
)[
0
]
os
.
system
(
'route add '
+
gw
+
' ppp0'
)
os
.
system
(
'sleep 5'
)
os
.
system
(
'ping '
+
gw
)
break
except
Exception
,
e
:
error
=
' Interface '
+
iface
+
'does not exist...'
error
=
error
+
' In function: '
+
sys
.
_getframe
().
f_code
.
co_name
+
': *** Caught exception: '
+
str
(
e
.
__class__
)
+
" : "
+
str
(
e
)
error
=
error
+
traceback
.
format_exc
()
print
error
thread_ppp
.
join
()
def
stop_ue
():
timeout
=
60
os
.
system
(
'killall wvdial'
)
send_command
(
'AT'
,
'OK'
,
timeout
)
send_command
(
'AT+CGATT=0'
,
'OK|ERROR'
,
timeout
)
#send_command('AT+CFUN=4' , 'OK' , timeout)
#reset the USB BUS of Bandrich UE
def
reset_ue
():
stringIdBandrich
=
'Huawei Technologies Co., Ltd. E398 LTE/UMTS/GSM Modem/Networkcard'
status
,
out
=
commands
.
getstatusoutput
(
'lsusb | grep -i
\'
'
+
stringIdBandrich
+
'
\'
'
)
if
(
out
==
''
)
:
print
"Bandrich 4G LTE Adapter not found. Exiting now..."
sys
.
exit
()
p
=
re
.
compile
(
'Bus\s*(\w+)\s*Device\s*(\w+):\s*ID\s*(\w+):(\w+)'
)
res
=
p
.
findall
(
out
)
BusId
=
res
[
0
][
0
]
DeviceId
=
res
[
0
][
1
]
VendorId
=
res
[
0
][
2
]
ProductId
=
res
[
0
][
3
]
usb_dir
=
find_usb_path
(
VendorId
,
ProductId
)
print
"Bandrich 4G LTE Adapter found in..."
+
usb_dir
cmd
=
"sudo sh -c
\"
echo 0 > "
+
usb_dir
+
"/authorized
\"
"
os
.
system
(
cmd
+
" ; sleep 15"
)
cmd
=
"sudo sh -c
\"
echo 1 > "
+
usb_dir
+
"/authorized
\"
"
os
.
system
(
cmd
+
" ; sleep 30"
)
i
=
1
gw
=
'192.172.0.1'
while
i
<
len
(
sys
.
argv
):
arg
=
sys
.
argv
[
i
]
if
arg
==
'--start-ue'
:
find_open_port
()
print
'Using Serial port : '
+
serial_port
start_ue
()
elif
arg
==
'--stop-ue'
:
find_open_port
()
print
'Using Serial port : '
+
serial_port
stop_ue
()
elif
arg
==
'--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
:
print
" Script called with wrong arguments, arg = "
+
arg
sys
.
exit
()
i
=
i
+
1
cmake_targets/autotests/tools/search_repl.py
View file @
0c8d4323
...
@@ -26,6 +26,9 @@ if keyword == 'mme_ip_address':
...
@@ -26,6 +26,9 @@ if keyword == 'mme_ip_address':
elif
keyword
==
'IPV4_LIST'
:
elif
keyword
==
'IPV4_LIST'
:
replacement_text
=
keyword
+
' = ( '
+
replacement_text
+
' ) ; '
replacement_text
=
keyword
+
' = ( '
+
replacement_text
+
' ) ; '
string
=
re
.
sub
(
r"IPV4_LIST\s*=\s*\(([^\$]+?)\)\s*;"
,
replacement_text
,
string
,
re
.
M
)
string
=
re
.
sub
(
r"IPV4_LIST\s*=\s*\(([^\$]+?)\)\s*;"
,
replacement_text
,
string
,
re
.
M
)
elif
keyword
==
'rrh_gw_config'
:
replacement_text
=
keyword
+
' = ( { '
+
replacement_text
+
' } ) ; '
string
=
re
.
sub
(
r"rrh_gw_config\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
)
...
...
cmake_targets/tools/stop_exmimo2
View file @
0c8d4323
...
@@ -13,5 +13,5 @@ sudo -E $OPENAIR_DIR/cmake_targets/tools/init_exmimo2
...
@@ -13,5 +13,5 @@ sudo -E $OPENAIR_DIR/cmake_targets/tools/init_exmimo2
#now we stop the card from transmitting anything
#now we stop the card from transmitting anything
cd
$OPENAIR_DIR
/targets/bin
cd
$OPENAIR_DIR
/targets/bin
sudo
-E
octave
$OPENAIR_DIR
/cmake_targets/tools/exmimo_stop_octave.m
sudo
-E
octave
-H
--no-gui
$OPENAIR_DIR
/cmake_targets/tools/exmimo_stop_octave.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