+++ /dev/null
-*** Settings ***
-Library Collections
-Library SSHLibrary
-Library UtilLibrary.py
-Resource RemoteBash.robot
-Resource SSHKeywords.robot
-
-
-*** Variables ***
-${REST_VIEW_CHANNEL} /restconf/operations/usc-channel:view-channel
-${REST_ADD_CHANNEL} /restconf/operations/usc-channel:add-channel
-${REST_REMOVE_CHANNEL} /restconf/operations/usc-channel:remove-channel
-${REST_REMOVE_SESSION} /restconf/operations/usc-channel:remove-session
-${REST_SEND_MESSAGE} /restconf/operations/usc-channel:send-message
-${NAV_USC_TOOLS} cd ~/usc-tools
-${CLONE_USC_TOOLS}
-... [ -f ~/usc-tools/UscAgent.jar ] && echo "The usc-tools does exist, done." || git clone https://github.com/victorxu99/usc-tools.git ~/usc-tools
-${ECHO_SERVER_PORT} 2007
-@{LIST_ECHO_SERVER_PORT} 2007 2008 2009
-${TEST_MESSAGE} This is a test message.
-${NUM_OF_MESSAGES} 100
-${AgentTcp} java -jar UscAgent.jar -t true
-${AgentUdp} java -jar UscAgent.jar -t false
-${AgentTcpCallhome} java -jar UscAgent.jar -t true -c true -h
-${AgentUdpCallhome} java -jar UscAgent.jar -t false -c true -h
-${EchoServerTcp} java -jar EchoServer.jar -t true -p 2007
-${EchoServerUdp} java -jar EchoServer.jar -t false -p 2007
-
-
-*** Keywords ***
-Download Tools
- [Documentation] Download UscAgent and EchoServer before any system
- ... is run.
- Log Download tools begin ...
- Run Command On Remote System ${TOOLS_SYSTEM_IP} ${CLONE_USC_TOOLS} prompt_timeout=30s
- Log Download tools ended.
-
-Start TCP
- [Documentation] Basic setup/cleanup work that can be done safely before any system
- ... is run.
- Log Start USC test VM for TCP
- ${agent_conn_id}= Open Connection ${TOOLS_SYSTEM_IP} timeout=30s
- Set Suite Variable ${agent_conn_id}
- Flexible Mininet Login
- Write ${NAV_USC_TOOLS}
- Write ${AgentTcp}
- Read
- ${echo_conn_id}= Open Connection ${TOOLS_SYSTEM_IP} timeout=30s
- Set Suite Variable ${echo_conn_id}
- Flexible Mininet Login
- Write ${NAV_USC_TOOLS}
- Write ${EchoServerTcp}
- Read Until initialized
-
-Start UDP
- [Documentation] Basic setup/cleanup work that can be done safely before any system
- ... is run.
- Log Start USC test VM for UDP
- ${agent_conn_id}= Open Connection ${TOOLS_SYSTEM_IP} timeout=30s
- Set Suite Variable ${agent_conn_id}
- Flexible Mininet Login
- Write ${NAV_USC_TOOLS}
- Write ${AgentUdp}
- Read
- ${echo_conn_id}= Open Connection ${TOOLS_SYSTEM_IP} timeout=30s
- Set Suite Variable ${echo_conn_id}
- Flexible Mininet Login
- Write ${NAV_USC_TOOLS}
- Write ${EchoServerUdp}
- Read Until initialized
-
-Start CALLHOME_TCP
- [Documentation] Basic setup/cleanup work that can be done safely before any system
- ... is run.
- Log Start USC test VM for CALLHOME_TCP
- ${agent_conn_id}= Open Connection ${TOOLS_SYSTEM_IP} timeout=30s
- Set Suite Variable ${agent_conn_id}
- ${callhomeCmd}= Catenate ${AgentTcpCallhome} ${ODL_SYSTEM_IP}
- Flexible Mininet Login
- Write ${NAV_USC_TOOLS}
- Write ${callhomeCmd}
- Read
- ${echo_conn_id}= Open Connection ${TOOLS_SYSTEM_IP} timeout=30s
- Set Suite Variable ${echo_conn_id}
- Flexible Mininet Login
- Write ${NAV_USC_TOOLS}
- Write ${EchoServerTcp}
- Read Until initialized
-
-Start CALLHOME_UDP
- [Documentation] Basic setup/cleanup work that can be done safely before any system
- ... is run.
- Log Start USC test VM for CALLHOME_UDP
- ${agent_conn_id}= Open Connection ${TOOLS_SYSTEM_IP} timeout=30s
- Set Suite Variable ${agent_conn_id}
- ${callhomeCmd}= Catenate ${AgentUdpCallhome} ${ODL_SYSTEM_IP}
- Flexible Mininet Login
- Write ${NAV_USC_TOOLS}
- Write ${callhomeCmd}
- Read
- ${echo_conn_id}= Open Connection ${TOOLS_SYSTEM_IP} timeout=30s
- Set Suite Variable ${echo_conn_id}
- Flexible Mininet Login
- Write ${NAV_USC_TOOLS}
- Write ${EchoServerUdp}
- Read Until initialized
-
-Start Fallback_TCP
- [Documentation] Basic setup/cleanup work that can be done safely before any system
- ... is run.
- Log Start USC test VM for Fallback_TCP
- ${echo_conn_id}= Open Connection ${TOOLS_SYSTEM_IP} timeout=30s
- Set Suite Variable ${echo_conn_id}
- Flexible Mininet Login
- Write ${NAV_USC_TOOLS}
- Write ${EchoServerTcp}
- Read Until initialized
-
-Start Fallback_UDP
- [Documentation] Basic setup/cleanup work that can be done safely before any system
- ... is run.
- Log Start USC test VM for Fallback_TCP
- ${echo_conn_id}= Open Connection ${TOOLS_SYSTEM_IP} timeout=30s
- Set Suite Variable ${echo_conn_id}
- Flexible Mininet Login
- Write ${NAV_USC_TOOLS}
- Write ${EchoServerUdp}
- Read Until initialized
-
-Start Multiple_Sessions_TCP
- [Documentation] Basic setup/cleanup work that can be done safely before any system
- ... is run.
- Log Start USC test VM for Multiple_Sessions_TCP
- ${agent_conn_id}= Open Connection ${TOOLS_SYSTEM_IP} timeout=30s
- Set Suite Variable ${agent_conn_id}
- Flexible Mininet Login
- Write ${NAV_USC_TOOLS}
- Write ${AgentTcp}
- Read
- ${L1}= Create List
- FOR ${port_index} IN @{LIST_ECHO_SERVER_PORT}
- Log ${port_index}
- ${echo_conn_id}= Open Connection ${TOOLS_SYSTEM_IP} timeout=30s
- Append To List ${L1} ${echo_conn_id}
- Flexible Mininet Login
- Write ${NAV_USC_TOOLS}
- Write java -jar EchoServer.jar -t true -p ${port_index}
- Read Until initialized
- END
- Set Suite Variable ${L1}
-
-Start Multiple_Sessions_UDP
- [Documentation] Basic setup/cleanup work that can be done safely before any system
- ... is run.
- Log Start USC test VM for Multiple_Sessions_UDP
- ${agent_conn_id}= Open Connection ${TOOLS_SYSTEM_IP} timeout=30s
- Set Suite Variable ${agent_conn_id}
- Flexible Mininet Login
- Write ${NAV_USC_TOOLS}
- Write ${AgentUdp}
- Read
- ${L1}= Create List
- FOR ${port_index} IN @{LIST_ECHO_SERVER_PORT}
- Log ${port_index}
- ${echo_conn_id}= Open Connection ${TOOLS_SYSTEM_IP} timeout=30s
- Append To List ${L1} ${echo_conn_id}
- Flexible Mininet Login
- Write ${NAV_USC_TOOLS}
- Write java -jar EchoServer.jar -t false -p ${port_index}
- Read Until initialized
- END
- Set Suite Variable ${L1}
-
-Stop Agent_Echo
- [Documentation] Cleanup/Shutdown work that should be done at the completion of all
- ... tests
- Log Stop USC test VM for Agent_Echo
- Switch Connection ${agent_conn_id}
- Read
- Write_Bare_Ctrl_C
- Write exit
- Close Connection
- Switch Connection ${echo_conn_id}
- Read
- Write_Bare_Ctrl_C
- Write exit
- Close Connection
-
-Stop Echo
- [Documentation] Cleanup/Shutdown work that should be done at the completion of all
- ... tests
- Log Stop USC test VM for Echo
- Switch Connection ${echo_conn_id}
- Read
- Write_Bare_Ctrl_C
- Write exit
- Close Connection
-
-Stop One_Agent_Multiple_Echo
- [Documentation] Cleanup/Shutdown work that should be done at the completion of all
- ... tests
- Log Stop USC test VM for One_Agent_Multiple_Echo
- Switch Connection ${agent_conn_id}
- Read
- Write_Bare_Ctrl_C
- Write exit
- Close Connection
- FOR ${echo_conn_id} IN @{L1}
- Switch Connection ${echo_conn_id}
- Read
- Write_Bare_Ctrl_C
- Write exit
- Close Connection
- END
+++ /dev/null
-*** Settings ***
-Resource ../../libraries/UscUtils.robot
-
-Suite Setup Download Tools
+++ /dev/null
-*** Settings ***
-Documentation Test suite for quicking testing if the environme setup is correct
-
-Library Collections
-Library OperatingSystem
-Library RequestsLibrary
-Library json
-Variables ../../../variables/Variables.py
-Resource ../../../libraries/UscUtils.robot
-
-Suite Setup Create Session session http://${ODL_SYSTEM_IP}:${RESTCONFPORT} auth=${AUTH} headers=${HEADERS}
-Suite Teardown Delete All Sessions
-
-Default Tags tcp_basic
-
-
-*** Test Cases ***
-View Channel
- ${topo} Create Dictionary topology-id=usc
- ${input} Create Dictionary input=${topo}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_VIEW_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} "topology"
+++ /dev/null
-*** Settings ***
-Documentation Test suite for an USC TLS channel
-
-Library Collections
-Library OperatingSystem
-Library SSHLibrary
-Library RequestsLibrary
-Library json
-Library ../../../../libraries/Common.py
-Variables ../../../../variables/Variables.py
-Resource ../../../../libraries/UscUtils.robot
-
-Suite Setup Create Session session http://${ODL_SYSTEM_IP}:${RESTCONFPORT} auth=${AUTH} headers=${HEADERS}
-Suite Teardown Delete All Sessions
-
-
-*** Test Cases ***
-Add Channel
- [Documentation] Add an USC TLS channel
- ${content} Create Dictionary
- ... hostname=${TOOLS_SYSTEM_IP}
- ... tcp=true
- ... port=${ECHO_SERVER_PORT}
- ... remote=false
- ${channel} Create Dictionary channel=${content}
- ${input} Create Dictionary input=${channel}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_ADD_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} Succeed to connect
-
-Check added Channel
- [Documentation] Check if the channel is correct
- ${topo} Create Dictionary topology-id=usc
- ${input} Create Dictionary input=${topo}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_VIEW_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} topology
- Should Contain ${resp.content} "sessions":1
- Should Contain ${resp.content} "channel-type":"TLS"
-
-Send Messages
- [Documentation] Send test messages multiple times to multiple sessions
- ${content} Create Dictionary
- ... hostname=${TOOLS_SYSTEM_IP}
- ... port=${ECHO_SERVER_PORT}
- ... tcp=true
- ... content=${TEST_MESSAGE}
- ${channel} Create Dictionary channel=${content}
- ${input} Create Dictionary input=${channel}
- FOR ${index} IN RANGE 0 ${NUM_OF_MESSAGES}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_SEND_MESSAGE} data=${data}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} Succeed to send request
- END
-
-View Bytes In and Bytes Out
- [Documentation] Check if the number of Bytes In and Bytes Out are correct
- ${topo} Create Dictionary topology-id=usc
- ${input} Create Dictionary input=${topo}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_VIEW_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} topology
- ${len} Get Length ${TEST_MESSAGE}
- ${totalLen} Evaluate ${len} * ${NUM_OF_MESSAGES}
- Should Contain ${resp.content} "bytes-out":${totalLen}
- Should Contain ${resp.content} "bytes-in":${totalLen}
-
-Remove Channel
- [Documentation] Remove the channel
- ${content} Create Dictionary hostname=${TOOLS_SYSTEM_IP} tcp=true
- ${channel} Create Dictionary channel=${content}
- ${input} Create Dictionary input=${channel}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_REMOVE_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} Succeed to remove
+++ /dev/null
-*** Settings ***
-Documentation Test suite for an USC TLS channel
-
-Resource ../../../../libraries/UscUtils.robot
-
-Suite Setup Start TCP
-Suite Teardown Stop Agent_Echo
+++ /dev/null
-*** Settings ***
-Documentation Test suite for multiple sessions in an USC TLS channel
-
-Library Collections
-Library OperatingSystem
-Library SSHLibrary
-Library RequestsLibrary
-Library json
-Library ../../../../libraries/Common.py
-Variables ../../../../variables/Variables.py
-Resource ../../../../libraries/UscUtils.robot
-
-Suite Setup Create Session session http://${ODL_SYSTEM_IP}:${RESTCONFPORT} auth=${AUTH} headers=${HEADERS}
-Suite Teardown Delete All Sessions
-
-
-*** Test Cases ***
-Add Channel
- [Documentation] Add multiple USC TLS channels
- FOR ${port_index} IN @{LIST_ECHO_SERVER_PORT}
- ${content} Create Dictionary
- ... hostname=${TOOLS_SYSTEM_IP}
- ... port=${port_index}
- ... tcp=true
- ... remote=false
- ${channel} Create Dictionary channel=${content}
- ${input} Create Dictionary input=${channel}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_ADD_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} Succeed to connect
- END
-
-Check added Channel
- [Documentation] Check if the channels are correct
- ${topo} Create Dictionary topology-id=usc
- ${input} Create Dictionary input=${topo}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_VIEW_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} "topology"
- ${len} Get Length ${LIST_ECHO_SERVER_PORT}
- Should Contain ${resp.content} "sessions":${len}
- Should Contain ${resp.content} "channel-type":"TLS"
-
-Send Messages
- [Documentation] Send test messages multiple times
- FOR ${port_index} IN @{LIST_ECHO_SERVER_PORT}
- ${content} Create Dictionary
- ... hostname=${TOOLS_SYSTEM_IP}
- ... port=${port_index}
- ... tcp=true
- ... content=${TEST_MESSAGE}
- ${channel} Create Dictionary channel=${content}
- ${input} Create Dictionary input=${channel}
- Send Now ${input}
- END
-
-View Bytes In and Bytes Out
- [Documentation] Check if the number of Bytes In and Bytes Out are correct
- ${topo} Create Dictionary topology-id=usc
- ${input} Create Dictionary input=${topo}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_VIEW_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} "topology"
- ${len1} Get Length ${LIST_ECHO_SERVER_PORT}
- ${len2} Get Length ${TEST_MESSAGE}
- ${totalLen} Evaluate ${len1} * ${len2} * ${NUM_OF_MESSAGES}
- Should Contain ${resp.content} "bytes-out":${totalLen}
- Should Contain ${resp.content} "bytes-in":${totalLen}
-
-Remove Sessions
- [Documentation] Remove the channels
- FOR ${port_index} IN @{LIST_ECHO_SERVER_PORT}
- ${content} Create Dictionary hostname=${TOOLS_SYSTEM_IP} port=${port_index} tcp=true
- ${channel} Create Dictionary channel=${content}
- ${input} Create Dictionary input=${channel}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_REMOVE_SESSION} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} Succeed to remove
- END
-
-Remove Channel
- [Documentation] Remove the channels
- ${content} Create Dictionary hostname=${TOOLS_SYSTEM_IP} tcp=true
- ${channel} Create Dictionary channel=${content}
- ${input} Create Dictionary input=${channel}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_REMOVE_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} Succeed to remove
-
-Check Channel
- [Documentation] Check if the channels are correct
- ${topo} Create Dictionary topology-id=usc
- ${input} Create Dictionary input=${topo}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_VIEW_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} "topology"
-
-
-*** Keywords ***
-Send Now
- [Arguments] ${body}
- FOR ${index} IN RANGE 0 ${NUM_OF_MESSAGES}
- ${data} json.dumps ${body}
- ${resp} Post Request session ${REST_SEND_MESSAGE} data=${data}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} Succeed to send request
- END
+++ /dev/null
-*** Settings ***
-Documentation Test suite for multiple sessions in an USC TLS channel
-
-Resource ../../../../libraries/UscUtils.robot
-
-Suite Setup Start Multiple_Sessions_TCP
-Suite Teardown Stop One_Agent_Multiple_Echo
-
-Force Tags multiple sessions tcp
+++ /dev/null
-*** Settings ***
-Documentation Test suite for callhome TLS channel
-
-Resource ../../../../libraries/UscUtils.robot
-
-Suite Setup Start CALLHOME_TCP
-Suite Teardown Stop Agent_Echo
+++ /dev/null
-*** Settings ***
-Documentation Test suite for callhome TLS channel
-
-Library Collections
-Library OperatingSystem
-Library SSHLibrary
-Library RequestsLibrary
-Library json
-Library ../../../../libraries/Common.py
-Variables ../../../../variables/Variables.py
-Resource ../../../../libraries/UscUtils.robot
-
-Suite Setup Create Session session http://${ODL_SYSTEM_IP}:${RESTCONFPORT} auth=${AUTH} headers=${HEADERS}
-Suite Teardown Delete All Sessions
-
-
-*** Test Cases ***
-Add Channel
- [Documentation] Add an USC TLS callhome channel
- ${content} Create Dictionary
- ... hostname=${TOOLS_SYSTEM_IP}
- ... tcp=true
- ... port=${ECHO_SERVER_PORT}
- ... remote=false
- ${channel} Create Dictionary channel=${content}
- ${input} Create Dictionary input=${channel}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_ADD_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} Succeed to connect
-
-Check added Channel
- [Documentation] Check if the channel is correct
- ${topo} Create Dictionary topology-id=usc
- ${input} Create Dictionary input=${topo}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_VIEW_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} "topology"
- Should Contain ${resp.content} "sessions":1
- Should Contain ${resp.content} "channel-type":"TLS"
- Should Contain ${resp.content} "call-home":"CallHome"
-
-Send Messages
- [Documentation] Send test messages multiple times
- ${content} Create Dictionary
- ... hostname=${TOOLS_SYSTEM_IP}
- ... port=${ECHO_SERVER_PORT}
- ... tcp=true
- ... content=${TEST_MESSAGE}
- ${channel} Create Dictionary channel=${content}
- ${input} Create Dictionary input=${channel}
- FOR ${index} IN RANGE 0 ${NUM_OF_MESSAGES}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_SEND_MESSAGE} data=${data}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} Succeed to send request
- END
-
-View Bytes In and Bytes Out
- [Documentation] Check if the number of Bytes In and Bytes Out are correct
- ${topo} Create Dictionary topology-id=usc
- ${input} Create Dictionary input=${topo}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_VIEW_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} "topology"
- ${len} Get Length ${TEST_MESSAGE}
- ${totalLen} Evaluate ${len} * ${NUM_OF_MESSAGES}
- Should Contain ${resp.content} "bytes-out":${totalLen}
- Should Contain ${resp.content} "bytes-in":${totalLen}
-
-Remove Channel
- [Documentation] Remove the channel
- ${content} Create Dictionary hostname=${TOOLS_SYSTEM_IP} tcp=true
- ${channel} Create Dictionary channel=${content}
- ${input} Create Dictionary input=${channel}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_REMOVE_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} Succeed to remove
+++ /dev/null
-*** Settings ***
-Resource ../../../libraries/UscUtils.robot
-
-Suite Setup Download Tools
-
-Force Tags tcp
+++ /dev/null
-*** Settings ***
-Documentation Test suite for an USC DTLS channel
-
-Library Collections
-Library OperatingSystem
-Library RequestsLibrary
-Library json
-Library ../../../../libraries/Common.py
-Variables ../../../../variables/Variables.py
-Resource ../../../../libraries/UscUtils.robot
-
-Suite Setup Create Session session http://${ODL_SYSTEM_IP}:${RESTCONFPORT} auth=${AUTH} headers=${HEADERS}
-Suite Teardown Delete All Sessions
-Test Timeout 1min
-
-
-*** Test Cases ***
-Add Channel
- [Documentation] Add an USC DTLS channel
- ${content} Create Dictionary
- ... hostname=${TOOLS_SYSTEM_IP}
- ... tcp=false
- ... port=${ECHO_SERVER_PORT}
- ... remote=false
- ${channel} Create Dictionary channel=${content}
- ${input} Create Dictionary input=${channel}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_ADD_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} Succeed to connect
-
-Check added Channel
- [Documentation] Check if the channel is correct
- ${topo} Create Dictionary topology-id=usc
- ${input} Create Dictionary input=${topo}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_VIEW_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} "topology"
- Should Contain ${resp.content} "sessions":1
- Should Contain ${resp.content} "channel-type":"DTLS"
-
-Send Messages
- [Documentation] Send test messages multiple times to multiple sessions
- ${content} Create Dictionary
- ... hostname=${TOOLS_SYSTEM_IP}
- ... port=${ECHO_SERVER_PORT}
- ... tcp=false
- ... content=${TEST_MESSAGE}
- ${channel} Create Dictionary channel=${content}
- ${input} Create Dictionary input=${channel}
- FOR ${index} IN RANGE 0 ${NUM_OF_MESSAGES}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_SEND_MESSAGE} data=${data}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} Succeed to send request
- END
-
-View Bytes In and Bytes Out
- [Documentation] Check if the number of Bytes In and Bytes Out are correct
- ${topo} Create Dictionary topology-id=usc
- ${input} Create Dictionary input=${topo}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_VIEW_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} "topology"
- ${len} Get Length ${TEST_MESSAGE}
- ${totalLen} Evaluate ${len} * ${NUM_OF_MESSAGES}
- Should Contain ${resp.content} "bytes-out":${totalLen}
- Should Contain ${resp.content} "bytes-in":${totalLen}
-
-Remove Channel
- [Documentation] Remove the channel
- ${content} Create Dictionary hostname=${TOOLS_SYSTEM_IP} tcp=false
- ${channel} Create Dictionary channel=${content}
- ${input} Create Dictionary input=${channel}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_REMOVE_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} Succeed to remove
+++ /dev/null
-*** Settings ***
-Documentation Test suite for an USC DTLS channel
-
-Resource ../../../../libraries/UscUtils.robot
-
-Suite Setup Start UDP
-Suite Teardown Stop Agent_Echo
-
-Force Tags 110_udp
+++ /dev/null
-*** Settings ***
-Documentation Test suite for multiple sessions in an USC TLS channel
-
-Library Collections
-Library OperatingSystem
-Library SSHLibrary
-Library RequestsLibrary
-Library json
-Library ../../../../libraries/Common.py
-Variables ../../../../variables/Variables.py
-Resource ../../../../libraries/UscUtils.robot
-
-Suite Setup Create Session session http://${ODL_SYSTEM_IP}:${RESTCONFPORT} auth=${AUTH} headers=${HEADERS}
-Suite Teardown Delete All Sessions
-Test Timeout 1min
-
-
-*** Test Cases ***
-Add Channel
- [Documentation] Add multiple USC DTLS channels
- FOR ${port_index} IN @{LIST_ECHO_SERVER_PORT}
- ${content} Create Dictionary
- ... hostname=${TOOLS_SYSTEM_IP}
- ... port=${port_index}
- ... tcp=false
- ... remote=false
- ${channel} Create Dictionary channel=${content}
- ${input} Create Dictionary input=${channel}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_ADD_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} Succeed to connect
- END
-
-Check added Channel
- [Documentation] Check if the channels are correct
- ${topo} Create Dictionary topology-id=usc
- ${input} Create Dictionary input=${topo}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_VIEW_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} "topology"
- ${len} Get Length ${LIST_ECHO_SERVER_PORT}
- Should Contain ${resp.content} "sessions":${len}
- Should Contain ${resp.content} "channel-type":"DTLS"
-
-Send Messages
- [Documentation] Send test messages multiple times
- FOR ${port_index} IN @{LIST_ECHO_SERVER_PORT}
- ${content} Create Dictionary
- ... hostname=${TOOLS_SYSTEM_IP}
- ... port=${port_index}
- ... tcp=false
- ... content=${TEST_MESSAGE}
- ${channel} Create Dictionary channel=${content}
- ${input} Create Dictionary input=${channel}
- Send Now ${input}
- END
-
-View Bytes In and Bytes Out
- [Documentation] Check if the number of Bytes In and Bytes Out are correct
- ${topo} Create Dictionary topology-id=usc
- ${input} Create Dictionary input=${topo}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_VIEW_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} "topology"
- ${len} Get Length ${TEST_MESSAGE}
- ${len1} Get Length ${LIST_ECHO_SERVER_PORT}
- ${len2} Get Length ${TEST_MESSAGE}
- ${totalLen} Evaluate ${len1} * ${len2} * ${NUM_OF_MESSAGES}
- Should Contain ${resp.content} "bytes-out":${totalLen}
- Should Contain ${resp.content} "bytes-in":${totalLen}
-
-Remove Sessions
- [Documentation] Remove the channels
- FOR ${port_index} IN @{LIST_ECHO_SERVER_PORT}
- ${content} Create Dictionary hostname=${TOOLS_SYSTEM_IP} port=${port_index} tcp=false
- ${channel} Create Dictionary channel=${content}
- ${input} Create Dictionary input=${channel}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_REMOVE_SESSION} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} Succeed to remove
- END
-
-Remove Channel
- [Documentation] Remove the channels
- ${content} Create Dictionary hostname=${TOOLS_SYSTEM_IP} tcp=false
- ${channel} Create Dictionary channel=${content}
- ${input} Create Dictionary input=${channel}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_REMOVE_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} Succeed to remove
-
-Check Channel
- [Documentation] Check if the channels are correct
- ${topo} Create Dictionary topology-id=usc
- ${input} Create Dictionary input=${topo}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_VIEW_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} "topology"
-
-
-*** Keywords ***
-Send Now
- [Arguments] ${body}
- FOR ${index} IN RANGE 0 ${NUM_OF_MESSAGES}
- ${data} json.dumps ${body}
- ${resp} Post Request session ${REST_SEND_MESSAGE} data=${data}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} Succeed to send request
- END
+++ /dev/null
-*** Settings ***
-Documentation Test suite for multiple sessions in an USC DTLS channel
-
-Resource ../../../../libraries/UscUtils.robot
-
-Suite Setup Start Multiple_Sessions_UDP
-Suite Teardown Stop One_Agent_Multiple_Echo
-
-Force Tags multiple_sessions_udp
+++ /dev/null
-*** Settings ***
-Documentation Test suite for callhome DTLS channel
-
-Library Collections
-Library OperatingSystem
-Library SSHLibrary
-Library RequestsLibrary
-Library json
-Library ../../../../libraries/Common.py
-Variables ../../../../variables/Variables.py
-Resource ../../../../libraries/UscUtils.robot
-
-Suite Setup Create Session session http://${ODL_SYSTEM_IP}:${RESTCONFPORT} auth=${AUTH} headers=${HEADERS}
-Suite Teardown Delete All Sessions
-Test Timeout 1 minute
-
-
-*** Test Cases ***
-Add Channel
- [Documentation] Add an USC TLS callhome channel
- ${content} Create Dictionary
- ... hostname=${TOOLS_SYSTEM_IP}
- ... tcp=false
- ... port=${ECHO_SERVER_PORT}
- ... remote=false
- ${channel} Create Dictionary channel=${content}
- ${input} Create Dictionary input=${channel}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_ADD_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} Succeed to connect
-
-Check added Channel
- [Documentation] Check if the channel is correct
- ${topo} Create Dictionary topology-id=usc
- ${input} Create Dictionary input=${topo}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_VIEW_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} "topology"
- Should Contain ${resp.content} "sessions":1
- Should Contain ${resp.content} "channel-type":"DTLS"
- Should Contain ${resp.content} "call-home":"CallHome"
-
-Send Messages
- [Documentation] Send test messages multiple times
- ${content} Create Dictionary
- ... hostname=${TOOLS_SYSTEM_IP}
- ... port=${ECHO_SERVER_PORT}
- ... tcp=false
- ... content=${TEST_MESSAGE}
- ${channel} Create Dictionary channel=${content}
- ${input} Create Dictionary input=${channel}
- FOR ${index} IN RANGE 0 ${NUM_OF_MESSAGES}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_SEND_MESSAGE} data=${data}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} Succeed to send request
- END
-
-View Bytes In and Bytes Out
- [Documentation] Check if the number of Bytes In and Bytes Out are correct
- ${topo} Create Dictionary topology-id=usc
- ${input} Create Dictionary input=${topo}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_VIEW_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} "topology"
- ${len} Get Length ${TEST_MESSAGE}
- ${totalLen} Evaluate ${len} * ${NUM_OF_MESSAGES}
- Should Contain ${resp.content} "bytes-out":${totalLen}
- Should Contain ${resp.content} "bytes-in":${totalLen}
-
-Remove Channel
- [Documentation] Remove the channel
- ${content} Create Dictionary hostname=${TOOLS_SYSTEM_IP} tcp=false
- ${channel} Create Dictionary channel=${content}
- ${input} Create Dictionary input=${channel}
- ${data} json.dumps ${input}
- ${resp} Post Request session ${REST_REMOVE_CHANNEL} data=${data}
- Log ${resp.content}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} Succeed to remove
+++ /dev/null
-*** Settings ***
-Documentation Test suite for callhome DTLS channel
-
-Resource ../../../../libraries/UscUtils.robot
-
-Suite Setup Start CALLHOME_UDP
-Suite Teardown Stop Agent_Echo
-
-Force Tags udp_callhome
+++ /dev/null
-*** Settings ***
-Resource ../../../libraries/UscUtils.robot
-
-Suite Setup Download Tools
-
-Force Tags udp
+++ /dev/null
-# Place the suites in run order:
-integration/test/csit/suites/usc/tcp
+++ /dev/null
-# Place the suites in run order:
-integration/test/csit/suites/usc/udp
"integration/distribution",
"mdsal",
"serviceutils",
- "usc",
"ovsdb",
"lispflowmapping",
"snmp4sdn",