Skip to content

Commit

Permalink
Temporarily skip lpmode test for some transceivers with known issue (#…
Browse files Browse the repository at this point in the history
…16547)

Description of PR
Summary:
Some sfp transceivers have known issues with lpmode test, where it fails to set_lpmode successfully. After discussion, we need a firmware from optics vendor to fix this issue.

Therefore, we will temporarily skip this set_lpmode test for known manufacturer and 400G combination until fix is available.

Approach
What is the motivation for this PR?
Temporarily skip known test failure

How did you do it?
check conditions to skip the test

How did you verify/test it?
platform_tests/api/test_sfp.py::TestSfpApi::test_lpmode[xxx-lc4]
03:30:49 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 0 (not applicable for this transceiver type)
03:30:49 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 1 (not applicable for this transceiver type)
03:30:49 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 2 (not applicable for this transceiver type)
03:30:50 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 3 (not applicable for this transceiver type)
03:30:50 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 4 (not applicable for this transceiver type)
03:30:51 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 5 (not applicable for this transceiver type)
03:30:51 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 6 (not applicable for this transceiver type)
03:30:52 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 7 (not applicable for this transceiver type)
03:30:52 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 8 (not applicable for this transceiver type)
03:30:52 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 9 (not applicable for this transceiver type)
03:30:53 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 10 (not applicable for this transceiver type)
03:30:53 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 11 (not applicable for this transceiver type)
03:30:54 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 12 (not applicable for this transceiver type)
03:30:54 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 13 (not applicable for this transceiver type)
03:30:55 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 14 (not applicable for this transceiver type)
03:30:55 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 15 (not applicable for this transceiver type)
03:30:55 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 16 (not applicable for this transceiver type)
03:30:56 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 17 (not applicable for this transceiver type)
03:30:56 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 18 (not applicable for this transceiver type)
03:30:57 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 19 (not applicable for this transceiver type)
03:30:57 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 20 (not applicable for this transceiver type)
03:30:58 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 21 (not applicable for this transceiver type)
03:30:58 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 22 (not applicable for this transceiver type)
03:30:58 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 23 (not applicable for this transceiver type)
03:30:59 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 24 (not applicable for this transceiver type)
03:30:59 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 25 (not applicable for this transceiver type)
03:31:00 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 26 (not applicable for this transceiver type)
03:31:00 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 27 (not applicable for this transceiver type)
03:31:01 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 28 (not applicable for this transceiver type)
03:31:01 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 29 (not applicable for this transceiver type)
03:31:01 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 30 (not applicable for this transceiver type)
03:31:02 test_sfp.test_lpmode L0795 WARNING| test_lpmode: Skipping transceiver 31 (not applicable for this transceiver type)
PASSED [ 33%]
platform_tests/api/test_sfp.py::TestSfpApi::test_lpmode[xxx-lc2] PASSED [ 66%]
platform_tests/api/test_sfp.py::TestSfpApi::test_lpmode[xxx-sup] SKIPPED (skipping for supervisor node)

co-authorized by: [email protected]
  • Loading branch information
augusdn authored Jan 17, 2025
1 parent 7bd7610 commit d8e8177
Showing 1 changed file with 14 additions and 0 deletions.
14 changes: 14 additions & 0 deletions tests/platform_tests/api/test_sfp.py
Original file line number Diff line number Diff line change
Expand Up @@ -258,6 +258,11 @@ class TestSfpApi(PlatformApiTestBase):
'supported_max_tx_power'
]

# xcvr to be skipped for lpmode test due to known issue
LPMODE_SKIP_LIST = [
{'manufacturer': 'Cloud Light', 'host_electrical_interface': '400GAUI-8 C2M (Annex 120E)'},
]

chassis_facts = None
duthost_vars = None

Expand Down Expand Up @@ -310,6 +315,15 @@ def is_xcvr_support_lpmode(self, xcvr_info_dict):
ext_identifier = xcvr_info_dict["ext_identifier"]
if ("QSFP" not in xcvr_type and "OSFP" not in xcvr_type) or "Power Class 1" in ext_identifier:
return False

# Temporarily add this logic to skip lpmode test for some transceivers with known issue
for xcvr_to_skip in self.LPMODE_SKIP_LIST:
if (xcvr_info_dict["manufacturer"].strip() == xcvr_to_skip["manufacturer"] and
xcvr_info_dict["host_electrical_interface"].strip() == xcvr_to_skip["host_electrical_interface"]):
logger.info("Temporarily skipping {} due to known issue".format(
xcvr_info_dict["manufacturer"]))
return False

return True

def is_xcvr_support_power_override(self, xcvr_info_dict):
Expand Down

0 comments on commit d8e8177

Please sign in to comment.