blob: c3ff9cfbffa0ae4080f2003c2ea1cc5918ca2482 [file] [log] [blame]
# Copyright 2022-2024 Open Networking Foundation (ONF) and the ONF Contributors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# FIXME Can we use the same test against BBSim and Hardware?
*** Settings ***
Documentation Test various DT FTTB end-to-end scenarios
Suite Setup Setup Suite
Test Setup Setup
Test Teardown Teardown
Suite Teardown Teardown Suite
Library Collections
Library String
Library OperatingSystem
Library XML
Library RequestsLibrary
Library ../../libraries/DependencyLibrary.py
Resource ../../libraries/vgc.robot
Resource ../../libraries/voltctl.robot
Resource ../../libraries/voltha.robot
Resource ../../libraries/utils_vgc.robot
Resource ../../libraries/k8s.robot
Resource ../../variables/variables.robot
Resource ../../libraries/power_switch.robot
*** Variables ***
${POD_NAME} flex-ocp-cord
${KUBERNETES_CONF} ${KUBERNETES_CONFIGS_DIR}/${POD_NAME}.conf
${KUBERNETES_CONFIGS_DIR} ~/pod-configs/kubernetes-configs
#${KUBERNETES_CONFIGS_DIR} ${KUBERNETES_CONFIGS_DIR}/${POD_NAME}.conf
${KUBERNETES_YAML} ${KUBERNETES_CONFIGS_DIR}/${POD_NAME}.yml
${HELM_CHARTS_DIR} ~/helm-charts
${VOLTHA_POD_NUM} 8
${NAMESPACE} voltha
${INFRA_NAMESPACE} default
${timeout} 60s
${of_id} 0
${logical_id} 0
${uprate} 0
${dnrate} 0
${has_dataplane} True
${teardown_device} True
${scripts} ../../scripts
# Per-test logging on failure is turned off by default; set this variable to enable
${container_log_dir} ${None}
# logging flag to enable Collect Logs, can be passed via the command line too
# example: -v logging:False
${logging} True
*** Test Cases ***
Sanity E2E Test for OLT/ONU on POD for DT FTTB
[Documentation] Validates E2E Ping Connectivity and object states for the given scenario:
... Validate successful DHCP/E2E ping (no EAPOL and DHCP flows) for the tech profile that is used
... Traffic sent with same vlan from different RGs,
... should reach the NNI port on the OLT with the expected double tagged vlan ids
... Inner vlans from the RG should not change
[Tags] sanityDtFttb
[Setup] Start Logging SanityTestDtFttb
[Teardown] Run Keywords Run Keyword If ${logging} Collect Logs
... AND Stop Logging SanityTestDtFttb
Setup
Run Keyword If ${has_dataplane} Clean Up Linux
Perform Sanity Test DT FTTB
*** Keywords ***
Setup Suite
[Documentation] Set up the test suite
Common Test Suite Setup
#Restore all ONUs
#Run Keyword If ${has_dataplane} RestoreONUs ${num_all_onus}
#power_switch.robot needs it to support different vendor's power switch
${switch_type}= Get Variable Value ${web_power_switch.type}
Run Keyword If "${switch_type}"!="" Set Global Variable ${powerswitch_type} ${switch_type}