Build start time: Fri Jul 4 09:04:35 UTC 2025
[ REASON ] : target/python-wheels/bullseye/sonic_ycabled-1.0-py3-none-any.whl does not exist NON-EXISTENT PREREQUISITES: target/python-wheels/bullseye/sonic_py_common-1.0-py3-none-any.whl-install target/python-wheels/bullseye/sonic_platform_common-1.0-py3-none-any.whl-install target/debs/bullseye/libswsscommon_1.0.0_amd64.deb-install target/debs/bullseye/python3-swsscommon_1.0.0_amd64.deb-install
[ FLAGS FILE ] : []
[ FLAGS DEPENDS ] : []
[ FLAGS DIFF ] : []
/sonic/src/sonic-platform-daemons/sonic-ycabled /sonic
running pytest
running egg_info
writing sonic_ycabled.egg-info/PKG-INFO
writing dependency_links to sonic_ycabled.egg-info/dependency_links.txt
writing entry points to sonic_ycabled.egg-info/entry_points.txt
writing requirements to sonic_ycabled.egg-info/requires.txt
writing top-level names to sonic_ycabled.egg-info/top_level.txt
reading manifest file 'sonic_ycabled.egg-info/SOURCES.txt'
writing manifest file 'sonic_ycabled.egg-info/SOURCES.txt'
running build_ext
running GrpcTool
============================= test session starts ==============================
platform linux -- Python 3.9.2, pytest-6.0.2, py-1.10.0, pluggy-0.13.0 -- /usr/bin/python3
cachedir: .pytest_cache
rootdir: /sonic/src/sonic-platform-daemons/sonic-ycabled, configfile: pytest.ini
plugins: pyfakefs-5.8.0, cov-2.10.1
collecting ... collected 273 items
tests/test_y_cable_helper.py::TestYCableScript::test_xcvrd_helper_class_run PASSED [ 0%]
tests/test_y_cable_helper.py::TestYCableScript::test_gather_arg_from_db_and_check_for_type PASSED [ 0%]
tests/test_y_cable_helper.py::TestYCableScript::test_gather_arg_from_db_and_check_for_none_type PASSED [ 1%]
tests/test_y_cable_helper.py::TestYCableScript::test_y_cable_wrapper_get_presence_with_platform_chassis_raise_exception PASSED [ 1%]
tests/test_y_cable_helper.py::TestYCableScript::test_post_port_mux_info_to_db PASSED [ 1%]
tests/test_y_cable_helper.py::TestYCableScript::test_post_port_mux_static_info_to_db PASSED [ 2%]
tests/test_y_cable_helper.py::TestYCableScript::test_y_cable_helper_format_mapping_identifier1 PASSED [ 2%]
tests/test_y_cable_helper.py::TestYCableScript::test_y_cable_helper_format_mapping_identifier_no_instance PASSED [ 2%]
tests/test_y_cable_helper.py::TestYCableScript::test_y_cable_wrapper_get_transceiver_info PASSED [ 3%]
tests/test_y_cable_helper.py::TestYCableScript::test_y_cable_wrapper_get_transceiver_info_with_platform_chassis PASSED [ 3%]
tests/test_y_cable_helper.py::TestYCableScript::test_y_cable_wrapper_get_transceiver_info_with_platform_chassis_not_implemented PASSED [ 4%]
tests/test_y_cable_helper.py::TestYCableScript::test_y_cable_wrapper_get_presence PASSED [ 4%]
tests/test_y_cable_helper.py::TestYCableScript::test_y_cable_wrapper_get_presence_with_platform_chassis PASSED [ 4%]
tests/test_y_cable_helper.py::TestYCableScript::test_y_cable_toggle_mux_torA_no_port_instance PASSED [ 5%]
tests/test_y_cable_helper.py::TestYCableScript::test_y_cable_toggle_mux_torA_update_status_exception PASSED [ 5%]
tests/test_y_cable_helper.py::TestYCableScript::test_y_cable_toggle_mux_torA_update_status_true PASSED [ 5%]
tests/test_y_cable_helper.py::TestYCableScript::test_y_cable_toggle_mux_torB_no_port_instance PASSED [ 6%]
tests/test_y_cable_helper.py::TestYCableScript::test_y_cable_toggle_mux_torB_update_status_exception PASSED [ 6%]
tests/test_y_cable_helper.py::TestYCableScript::test_y_cable_toggle_mux_torB_update_status_true PASSED [ 6%]
tests/test_y_cable_helper.py::TestYCableScript::test_update_tor_active_side_1_active PASSED [ 7%]
tests/test_y_cable_helper.py::TestYCableScript::test_update_tor_active_side_2_active PASSED [ 7%]
tests/test_y_cable_helper.py::TestYCableScript::test_update_tor_active_side_1_standby PASSED [ 8%]
tests/test_y_cable_helper.py::TestYCableScript::test_update_tor_active_side_2_standby PASSED [ 8%]
tests/test_y_cable_helper.py::TestYCableScript::test_update_tor_active_side_no_cable_presence PASSED [ 8%]
tests/test_y_cable_helper.py::TestYCableScript::test_update_tor_active_side_multiple_mappings PASSED [ 9%]
tests/test_y_cable_helper.py::TestYCableScript::test_update_tor_active_side_with_read_update PASSED [ 9%]
tests/test_y_cable_helper.py::TestYCableScript::test_update_tor_active_side_with_read_update_with_exception PASSED [ 9%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_mux_cable_info_without_presence PASSED [ 10%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_ycable_physical_port_from_logical_port PASSED [ 10%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_ycable_physical_port_from_logical_port_physical_port_not_present PASSED [ 10%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_ycable_physical_port_from_logical_port_physical_port_list_empty PASSED [ 11%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_ycable_port_instance_from_logical_port PASSED [ 11%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_ycable_port_instance_from_logical_port_no_presence PASSED [ 12%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_ycable_port_instance_from_logical_port_no_port_instance PASSED [ 12%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_ycable_port_instance_from_logical_port_multiple_mapping PASSED [ 12%]
tests/test_y_cable_helper.py::TestYCableScript::test_update_table_mux_status_for_response_tbl PASSED [ 13%]
tests/test_y_cable_helper.py::TestYCableScript::test_set_result_and_delete_port PASSED [ 13%]
tests/test_y_cable_helper.py::TestYCableScript::test_delete_port_from_y_cable_table PASSED [ 13%]
tests/test_y_cable_helper.py::TestYCableScript::test_update_appdb_port_mux_cable_response_table_port_instance_none PASSED [ 14%]
tests/test_y_cable_helper.py::TestYCableScript::test_update_appdb_port_mux_cable_response_table_read_side_none PASSED [ 14%]
tests/test_y_cable_helper.py::TestYCableScript::test_update_appdb_port_mux_cable_response_table_active_side_none PASSED [ 15%]
tests/test_y_cable_helper.py::TestYCableScript::test_update_appdb_port_mux_cable_response_table_active_side_is_read_side PASSED [ 15%]
tests/test_y_cable_helper.py::TestYCableScript::test_update_appdb_port_mux_cable_response_table_active_side_not_read_side PASSED [ 15%]
tests/test_y_cable_helper.py::TestYCableScript::test_update_appdb_port_mux_cable_response_table_active_side_status_unknown PASSED [ 16%]
tests/test_y_cable_helper.py::TestYCableScript::test_update_appdb_port_mux_cable_response_table_no_presence_status_unknown PASSED [ 16%]
tests/test_y_cable_helper.py::TestYCableScript::test_update_appdb_port_mux_cable_response_table_invalid_ycable_mapping PASSED [ 16%]
tests/test_y_cable_helper.py::TestYCableScript::test_read_y_cable_and_update_statedb_port_tbl_invalid_ycable_mapping PASSED [ 17%]
tests/test_y_cable_helper.py::TestYCableScript::test_read_y_cable_and_update_statedb_port_tbl_port_instance_none PASSED [ 17%]
tests/test_y_cable_helper.py::TestYCableScript::test_read_y_cable_and_update_statedb_port_tbl_get_presence_false PASSED [ 17%]
tests/test_y_cable_helper.py::TestYCableScript::test_read_y_cable_and_update_statedb_port_tbl_port_instance_get_read_side_exception PASSED [ 18%]
tests/test_y_cable_helper.py::TestYCableScript::test_read_y_cable_and_update_statedb_port_tbl_port_instance_get_mux_dir_exception PASSED [ 18%]
tests/test_y_cable_helper.py::TestYCableScript::test_read_y_cable_and_update_statedb_port_tbl_port_instance_status_active PASSED [ 19%]
tests/test_y_cable_helper.py::TestYCableScript::test_read_y_cable_and_update_statedb_port_tbl_port_instance_status_standby PASSED [ 19%]
tests/test_y_cable_helper.py::TestYCableScript::test_read_y_cable_and_update_statedb_port_tbl_port_instance_status_unknown PASSED [ 19%]
tests/test_y_cable_helper.py::TestYCableScript::test_create_tables_and_insert_mux_unknown_entries PASSED [ 20%]
tests/test_y_cable_helper.py::TestYCableScript::test_check_identifier_presence_and_update_mux_table_entry_status_false PASSED [ 20%]
tests/test_y_cable_helper.py::TestYCableScript::test_check_identifier_presence_and_update_mux_table_entry_state_absent PASSED [ 20%]
tests/test_y_cable_helper.py::TestYCableScript::test_check_identifier_presence_and_update_mux_table_entry_bad_state_value PASSED [ 21%]
tests/test_y_cable_helper.py::TestYCableScript::test_check_identifier_presence_and_update_mux_table_entry_no_presence PASSED [ 21%]
tests/test_y_cable_helper.py::TestYCableScript::test_check_identifier_presence_and_update_mux_table_entry_no_port_info PASSED [ 21%]
tests/test_y_cable_helper.py::TestYCableScript::test_check_identifier_presence_and_update_mux_table_entry_multiple_port_instances PASSED [ 22%]
tests/test_y_cable_helper.py::TestYCableScript::test_check_identifier_presence_and_update_mux_table_entry_no_vendor_port_info PASSED [ 22%]
tests/test_y_cable_helper.py::TestYCableScript::test_check_identifier_presence_and_update_mux_table_entry_no_model_port_info PASSED [ 23%]
tests/test_y_cable_helper.py::TestYCableScript::test_check_identifier_presence_and_update_mux_table_entry_invalid_vendor_port_info PASSED [ 23%]
tests/test_y_cable_helper.py::TestYCableScript::test_check_identifier_presence_and_update_mux_table_entry_invalid_model_port_info PASSED [ 23%]
tests/test_y_cable_helper.py::TestYCableScript::test_check_identifier_presence_and_update_mux_table_entry_module_dir_none PASSED [ 24%]
tests/test_y_cable_helper.py::TestYCableScript::test_check_identifier_presence_and_update_mux_table_entry_module_none PASSED [ 24%]
tests/test_y_cable_helper.py::TestYCableScript::test_check_identifier_presence_and_update_mux_table_entry_module_microsoft PASSED [ 24%]
tests/test_y_cable_helper.py::TestYCableScript::test_check_identifier_presence_and_update_mux_table_entry_module_microsoft_y_cable_presence_false PASSED [ 25%]
tests/test_y_cable_helper.py::TestYCableScript::test_check_identifier_presence_and_delete_mux_table_entry PASSED [ 25%]
tests/test_y_cable_helper.py::TestYCableScript::test_init_ports_status_for_y_cable PASSED [ 26%]
tests/test_y_cable_helper.py::TestYCableScript::test_change_ports_status_for_y_cable_change_event PASSED [ 26%]
tests/test_y_cable_helper.py::TestYCableScript::test_change_ports_status_for_y_cable_change_event_sfp_removed PASSED [ 26%]
tests/test_y_cable_helper.py::TestYCableScript::test_change_ports_status_for_y_cable_change_event_sfp_removed_with_false PASSED [ 27%]
tests/test_y_cable_helper.py::TestYCableScript::test_change_ports_status_for_y_cable_change_event_sfp_removed_with_removal PASSED [ 27%]
tests/test_y_cable_helper.py::TestYCableScript::test_change_ports_status_for_y_cable_change_event_sfp_unknown PASSED [ 27%]
tests/test_y_cable_helper.py::TestYCableScript::test_delete_ports_status_for_y_cable PASSED [ 28%]
tests/test_y_cable_helper.py::TestYCableScript::test_check_identifier_presence_and_update_mux_info_entry PASSED [ 28%]
tests/test_y_cable_helper.py::TestYCableScript::test_check_identifier_presence_and_update_mux_info_entry_with_false PASSED [ 28%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_firmware_dict PASSED [ 29%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_firmware_dict_asic_error PASSED [ 29%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_firmware_dict_download_status_failed_exception PASSED [ 30%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_firmware_dict_download_status_failed PASSED [ 30%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_muxcable_info PASSED [ 30%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_muxcable_info_with_false PASSED [ 31%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_muxcable_info_peer_side PASSED [ 31%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_muxcable_info_exceptions PASSED [ 31%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_muxcable_info_true_exceptions_peer_side PASSED [ 32%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_muxcable_info_true_exceptions PASSED [ 32%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_muxcable_info_exceptions_peer_side PASSED [ 32%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_muxcable_static_info PASSED [ 33%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_muxcable_static_info_read_side_peer PASSED [ 33%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_muxcable_static_info_read_side_peer_exceptions PASSED [ 34%]
tests/test_y_cable_helper.py::TestYCableScript::test_task_download_firmware_worker PASSED [ 34%]
tests/test_y_cable_helper.py::TestYCableScript::test_set_show_firmware_fields PASSED [ 34%]
tests/test_y_cable_helper.py::TestYCableScript::test_DaemonYcable_init_deinit PASSED [ 35%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_prbs_cmd_arg_tbl_notification_no_port PASSED [ 35%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_prbs_cmd_arg_tbl_notification_no_instance PASSED [ 35%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_prbs_cmd_arg_tbl_notification_with_instance_enable PASSED [ 36%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_prbs_cmd_arg_tbl_notification_with_instance_disable PASSED [ 36%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_prbs_cmd_arg_tbl_notification_with_instance_reset PASSED [ 36%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_prbs_cmd_arg_tbl_notification_with_instance_anlt_enable PASSED [ 37%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_prbs_cmd_arg_tbl_notification_with_instance_anlt_disable PASSED [ 37%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_prbs_cmd_arg_tbl_notification_with_instance_fec_enable PASSED [ 38%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_prbs_cmd_arg_tbl_notification_with_instance_fec_disable PASSED [ 38%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_prbs_cmd_arg_tbl_notification_else_value PASSED [ 38%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_loop_cmd_arg_tbl_notification_else_value PASSED [ 39%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_loop_cmd_arg_tbl_notification_no_port PASSED [ 39%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_loop_cmd_arg_tbl_notification_no_instance PASSED [ 39%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_loop_cmd_arg_tbl_notification_enable PASSED [ 40%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_loop_cmd_arg_tbl_notification_disable PASSED [ 40%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_show_event_cmd_arg_tbl_notification_else_value PASSED [ 41%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_show_event_cmd_arg_tbl_notification_get_log PASSED [ 41%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_show_event_cmd_arg_tbl_notification_get_actual_log PASSED [ 41%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_show_event_cmd_arg_tbl_notification_get_no_log PASSED [ 42%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_show_event_cmd_arg_tbl_notification_no_port PASSED [ 42%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_show_event_cmd_arg_tbl_notification_no_instance PASSED [ 42%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_result PASSED [ 43%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_no_status PASSED [ 43%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_no_port PASSED [ 43%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_no_instance PASSED [ 44%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_ber PASSED [ 44%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_ber_no_target PASSED [ 45%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_ber_with_exception PASSED [ 45%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_ber_with_no_target PASSED [ 45%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_eye_with_with_correct_values PASSED [ 46%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_eye_with_with_exception PASSED [ 46%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_eye_with_with_no_target PASSED [ 46%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_fec_stats_with_with_correct_values PASSED [ 47%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_fec_stats_with_with_exception PASSED [ 47%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_fec_stats_with_with_no_target PASSED [ 47%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_pcs_stats_with_with_correct_values PASSED [ 48%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_pcs_stats_with_with_exception PASSED [ 48%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_pcs_stats_with_with_no_target PASSED [ 49%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_alive_status_with_with_exception PASSED [ 49%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_health_check_with_with_exception PASSED [ 49%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_reset_cause_with_with_exception PASSED [ 50%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_operation_time_with_with_exception PASSED [ 50%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_debug_dump_with_with_exception PASSED [ 50%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_debug_dump_with_correct_values PASSED [ 51%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_queue_info_with_correct_values PASSED [ 51%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_queue_info_with_exception PASSED [ 52%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_ber_with_with_correct_values PASSED [ 52%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_eye PASSED [ 52%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_eye_with_exception PASSED [ 53%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_fec_stats PASSED [ 53%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_pcs_stats PASSED [ 53%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_alive_status PASSED [ 54%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_cable_health PASSED [ 54%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_reset_cause_correct_values PASSED [ 54%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_operation_time PASSED [ 55%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_queue_info PASSED [ 55%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_get_fec_cmd_arg_tbl_notification_get_debug_dump_registers PASSED [ 56%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_firmware_roll_cmd_arg_tbl_notification_no_port PASSED [ 56%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_firmware_roll_cmd_arg_tbl_notification_no_instance PASSED [ 56%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_firmware_roll_cmd_arg_tbl_notification_with_instance PASSED [ 57%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_firmware_roll_cmd_arg_tbl_notification_no_port_and_instance PASSED [ 57%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_firmware_down_cmd_arg_tbl_notification_no_port PASSED [ 57%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_firmware_down_cmd_arg_tbl_notification_else_condition PASSED [ 58%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_firmware_down_cmd_arg_tbl_notification_with_instance PASSED [ 58%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_firmware_down_cmd_arg_tbl_notification_no_instance PASSED [ 58%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_firmware_acti_cmd_arg_tbl_notification_no_port PASSED [ 59%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_firmware_acti_cmd_arg_tbl_notification_else_condition PASSED [ 59%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_firmware_acti_cmd_arg_tbl_notification_with_instance PASSED [ 60%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_firmware_acti_cmd_arg_tbl_notification_no_instance PASSED [ 60%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_show_firmware_show_cmd_arg_tbl_notification_no_port PASSED [ 60%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_show_firmware_show_cmd_arg_tbl_notification_else_condition PASSED [ 61%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_show_firmware_show_cmd_arg_tbl_notification_with_instance PASSED [ 61%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_show_firmware_show_cmd_arg_tbl_notification_no_instance PASSED [ 61%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_mux_switchmode_cmd_arg_tbl_notification_no_port PASSED [ 62%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_mux_switchmode_cmd_arg_tbl_notification_else_condition PASSED [ 62%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_mux_switchmode_cmd_arg_tbl_notification_with_instance_manual PASSED [ 63%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_mux_switchmode_cmd_arg_tbl_notification_with_instance_manual_with_exception PASSED [ 63%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_mux_switchmode_cmd_arg_tbl_notification_no_instance PASSED [ 63%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_mux_switchmode_cmd_arg_tbl_notification_with_instance_auto PASSED [ 64%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_show_mux_switchmode_cmd_arg_tbl_notification_no_port PASSED [ 64%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_show_mux_switchmode_cmd_arg_tbl_notification_with_instance_manual PASSED [ 64%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_show_mux_switchmode_cmd_arg_tbl_notification_no_instance PASSED [ 65%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_show_mux_switchmode_cmd_arg_tbl_notification_with_instance_auto PASSED [ 65%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_mux_state_cmd_arg_tbl_notification_no_port PASSED [ 65%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_show_mux_switchmode_cmd_arg_tbl_notification_else_condition PASSED [ 66%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_mux_state_cmd_arg_tbl_notification_with_instance_manual PASSED [ 66%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_mux_state_cmd_arg_tbl_notification_with_instance_cmd_arg PASSED [ 67%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_mux_state_cmd_arg_tbl_notification_no_instance PASSED [ 67%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_config_mux_state_cmd_arg_tbl_notification_with_instance_auto PASSED [ 67%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_show_mux_state_cmd_arg_tbl_notification_no_port PASSED [ 68%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_show_mux_state_cmd_arg_tbl_notification_else_condition PASSED [ 68%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_show_mux_state_cmd_arg_tbl_notification_with_instance_manual PASSED [ 68%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_show_mux_state_cmd_arg_tbl_notification_no_instance PASSED [ 69%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_show_mux_state_cmd_arg_tbl_notification_with_instance_auto_active_standby PASSED [ 69%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_show_mux_state_cmd_arg_tbl_notification_with_instance_auto_active_active_none PASSED [ 69%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_show_mux_state_cmd_arg_tbl_notification_with_instance_auto_active_active PASSED [ 70%]
tests/test_y_cable_helper.py::TestYCableScript::test_retry_setup_grpc_channel_for_port_incorrect PASSED [ 70%]
tests/test_y_cable_helper.py::TestYCableScript::test_retry_setup_grpc_channel_for_port_correct PASSED [ 71%]
tests/test_y_cable_helper.py::TestYCableScript::test_retry_setup_grpc_channel_for_port_correct_none_val PASSED [ 71%]
tests/test_y_cable_helper.py::TestYCableScript::test_process_loopback_interface_and_get_read_side_rc PASSED [ 71%]
tests/test_y_cable_helper.py::TestYCableScript::test_process_loopback_interface_and_get_read_side_rc_true PASSED [ 72%]
tests/test_y_cable_helper.py::TestYCableScript::test_process_loopback_interface_and_get_read_side_false PASSED [ 72%]
tests/test_y_cable_helper.py::TestYCableScript::test_check_identifier_presence_and_setup_channel PASSED [ 72%]
tests/test_y_cable_helper.py::TestYCableScript::test_check_identifier_presence_and_setup_channel_with_false_status PASSED [ 73%]
tests/test_y_cable_helper.py::TestYCableScript::test_check_identifier_presence_and_setup_channel_with_mock PASSED [ 73%]
tests/test_y_cable_helper.py::TestYCableScript::test_check_identifier_presence_and_setup_channel_with_mock_not_none PASSED [ 73%]
tests/test_y_cable_helper.py::TestYCableScript::test_setup_grpc_channel_for_port PASSED [ 74%]
tests/test_y_cable_helper.py::TestYCableScript::test_setup_grpc_channel_for_port_get_false PASSED [ 74%]
tests/test_y_cable_helper.py::TestYCableScript::test_connect_channel PASSED [ 75%]
tests/test_y_cable_helper.py::TestYCableScript::test_setup_grpc_channels PASSED [ 75%]
tests/test_y_cable_helper.py::TestYCableScript::test_check_mux_cable_port_type_get_none PASSED [ 75%]
tests/test_y_cable_helper.py::TestYCableScript::test_check_mux_cable_port_type_get_correct PASSED [ 76%]
tests/test_y_cable_helper.py::TestYCableScript::test_check_mux_cable_port_type_get_correct_standby PASSED [ 76%]
tests/test_y_cable_helper.py::TestYCableScript::test_parse_grpc_response_hw_mux_cable_change_state PASSED [ 76%]
tests/test_y_cable_helper.py::TestYCableScript::test_parse_grpc_response_hw_mux_cable_change_state_standby PASSED [ 77%]
tests/test_y_cable_helper.py::TestYCableScript::test_parse_grpc_response_hw_mux_cable_change_state_unknown PASSED [ 77%]
tests/test_y_cable_helper.py::TestYCableScript::test_parse_grpc_response_hw_mux_cable_change_state_unknown_false PASSED [ 78%]
tests/test_y_cable_helper.py::TestYCableScript::test_parse_grpc_response_forwarding_state_unknown_false PASSED [ 78%]
tests/test_y_cable_helper.py::TestYCableScript::test_parse_grpc_response_forwarding_state_active_standby_true_read_side PASSED [ 78%]
tests/test_y_cable_helper.py::TestYCableScript::test_parse_grpc_response_forwarding_state_active_active_true_read_side PASSED [ 79%]
tests/test_y_cable_helper.py::TestYCableScript::test_parse_grpc_response_forwarding_state_active_active_true PASSED [ 79%]
tests/test_y_cable_helper.py::TestYCableScript::test_parse_grpc_response_forwarding_state_active_standby_true PASSED [ 79%]
tests/test_y_cable_helper.py::TestYCableScript::test_parse_grpc_response_forwarding_state_standby_standby_true PASSED [ 80%]
tests/test_y_cable_helper.py::TestYCableScript::test_parse_grpc_response_forwarding_state_active_active_with_true_read_side PASSED [ 80%]
tests/test_y_cable_helper.py::TestYCableScript::test_parse_grpc_response_forwarding_state_standby_standby_with_true_read_side PASSED [ 80%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_mux_cable_static_info_without_presence PASSED [ 81%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_grpc_credentials PASSED [ 81%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_grpc_credentials_root PASSED [ 82%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_ycable_enable_disable_tel_notification PASSED [ 82%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_ycable_enable_disable_tel_notification_probe PASSED [ 82%]
tests/test_y_cable_helper.py::TestYCableScript::test_apply_grpc_secrets_configuration PASSED [ 83%]
tests/test_y_cable_helper.py::TestYCableScript::test_handle_ycable_active_standby_probe_notification PASSED [ 83%]
tests/test_y_cable_helper.py::TestYCableScript::test_parse_grpc_response_link_and_oper_state_down_down PASSED [ 83%]
tests/test_y_cable_helper.py::TestYCableScript::test_parse_grpc_response_link_and_oper_state_up_down PASSED [ 84%]
tests/test_y_cable_helper.py::TestYCableScript::test_parse_grpc_response_link_and_oper_state_up_up PASSED [ 84%]
tests/test_y_cable_helper.py::TestYCableScript::test_parse_grpc_response_link_and_oper_state_down_down_read_side_zero PASSED [ 84%]
tests/test_y_cable_helper.py::TestYCableScript::test_parse_grpc_response_link_and_oper_state_down_down_read_side_zero_unknown PASSED [ 85%]
tests/test_y_cable_helper.py::TestYCableScript::test_parse_grpc_response_link_and_oper_state_up_down_read_side_zero PASSED [ 85%]
tests/test_y_cable_helper.py::TestYCableScript::test_parse_grpc_response_link_and_oper_state_up_up_read_side_zero PASSED [ 86%]
tests/test_y_cable_helper.py::TestYCableScript::test_parse_grpc_response_link_and_oper_state_down_down_read_side_zero_link_state PASSED [ 86%]
tests/test_y_cable_helper.py::TestYCableScript::test_parse_grpc_response_link_and_oper_state_up_down_read_side_zero_link_state PASSED [ 86%]
tests/test_y_cable_helper.py::TestYCableScript::test_parse_grpc_response_link_and_oper_state_up_up_read_side_zero_link_state PASSED [ 87%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_muxcable_info_for_active_active PASSED [ 87%]
tests/test_y_cable_helper.py::TestYCableScript::test_get_muxcable_info_for_active_active_with_false PASSED [ 87%]
tests/test_y_cable_helper.py::TestYCableScript::test_ycable_graceful_client PASSED [ 88%]
tests/test_y_cable_helper.py::TestYcableScriptExecution::test_ycable_helper_cli_worker PASSED [ 88%]
tests/test_y_cable_helper.py::TestYcableScriptExecution::test_ycable_helper_cli_worker_execution PASSED [ 89%]
tests/test_y_cable_helper.py::TestYcableScriptExecution::test_ycable_helper_table_worker PASSED [ 89%]
tests/test_y_cable_helper.py::TestYcableScriptExecution::test_ycable_helper_table_worker_active_active PASSED [ 89%]
tests/test_y_cable_helper.py::TestYcableScriptExecution::test_ycable_helper_table_worker_probe_active_active PASSED [ 90%]
tests/test_y_cable_helper.py::TestYcableScriptExecution::test_ycable_helper_table_worker_probe_active PASSED [ 90%]
tests/test_y_cable_helper.py::TestYcableScriptExecution::test_ycable_helper_table_worker_probe PASSED [ 90%]
tests/test_y_cable_helper.py::TestYcableScriptExecution::test_ycable_helper_table_worker_toggle PASSED [ 91%]
tests/test_y_cable_helper.py::TestYcableScriptExecution::test_ycable_helper_table_worker_toggle_active_active PASSED [ 91%]
tests/test_y_cable_helper.py::TestYcableScriptExecution::test_ycable_wait_for_state_change PASSED [ 91%]
tests/test_ycable.py::TestYcableScript::test_ycable_info_helper_class_run PASSED [ 92%]
tests/test_ycable.py::TestYcableScript::test_ycable_helper_class_run_loop PASSED [ 92%]
tests/test_ycable.py::TestYcableScript::test_ycable_helper_class_run PASSED [ 93%]
tests/test_ycable.py::TestYcableScript::test_detect_port_in_error_status PASSED [ 93%]
tests/test_ycable.py::TestYcableScript::test_put_all_values_from_list_to_db PASSED [ 93%]
tests/test_ycable.py::TestYcableScript::test_put_all_values_from_dict_to_db PASSED [ 94%]
tests/test_ycable.py::TestYcableScript::test_post_port_mux_info_to_db PASSED [ 94%]
tests/test_ycable.py::TestYcableScript::test_post_port_mux_static_info_to_db PASSED [ 94%]
tests/test_ycable.py::TestYcableScript::test_y_cable_helper_format_mapping_identifier1 PASSED [ 95%]
tests/test_ycable.py::TestYcableScript::test_y_cable_wrapper_get_transceiver_info PASSED [ 95%]
tests/test_ycable.py::TestYcableScript::test_y_cable_wrapper_get_presence PASSED [ 95%]
tests/test_ycable.py::TestYcableScript::test_get_ycable_physical_port_from_logical_port PASSED [ 96%]
tests/test_ycable.py::TestYcableScript::test_get_ycable_port_instance_from_logical_port PASSED [ 96%]
tests/test_ycable.py::TestYcableScript::test_set_show_firmware_fields PASSED [ 97%]
tests/test_ycable.py::TestYcableScript::test_DaemonYcable_init_deinit PASSED [ 97%]
tests/test_ycable.py::TestYcableScript::test_DaemonYcable_init_deinit_full PASSED [ 97%]
tests/test_ycable.py::TestYcableScript::test_handle_state_update_task PASSED [ 98%]
tests/test_ycable.py::TestYcableScript::test_handle_state_update_task_with_delete PASSED [ 98%]
tests/test_ycable.py::TestYcableScript::test_ycable_helper_state_update_task PASSED [ 98%]
tests/test_ycable.py::TestYcableScriptException::test_ycable_helper_class_run_loop_with_exception PASSED [ 99%]
tests/test_ycable.py::TestYcableAsyncScript::test_ycable_helper_async_client_run_loop_with_exception PASSED [ 99%]
tests/test_ycable.py::TestYcableActiveActiveHelper::test_check_presence_for_active_active_cable_type PASSED [100%]
=============================== warnings summary ===============================
/usr/lib/python3/dist-packages/_pytest/junitxml.py:446
/usr/lib/python3/dist-packages/_pytest/junitxml.py:446: PytestDeprecationWarning: The 'junit_family' default value will change to 'xunit2' in pytest 6.0. See:
https://docs.pytest.org/en/stable/deprecations.html#junit-family-default-value-change-to-xunit2
for more information.
_issue_warning_captured(deprecated.JUNIT_XML_DEFAULT_FAMILY, config.hook, 2)
tests/test_y_cable_helper.py:68
/sonic/src/sonic-platform-daemons/sonic-ycabled/tests/test_y_cable_helper.py:68: PytestAssertRewriteWarning: assertion is always true, perhaps remove parentheses?
assert(rc == (None, "value"), {'abcd': 'x', 'def': 'y'})
tests/test_ycable.py::TestYcableAsyncScript::test_ycable_helper_async_client_run_loop_with_exception
/sonic/src/sonic-platform-daemons/sonic-ycabled/tests/test_ycable.py:427: RuntimeWarning: coroutine 'YCableAsyncNotificationTask.task_worker' was never awaited
Y_cable_async_task.task_worker()
-- Docs: https://docs.pytest.org/en/stable/warnings.html
- generated xml file: /sonic/src/sonic-platform-daemons/sonic-ycabled/test-results.xml -
----------- coverage: platform linux, python 3.9.2-final-0 -----------
Name Stmts Miss Cover
---------------------------------------------------------------------
ycable/__init__.py 0 0 100%
ycable/ycable.py 268 89 67%
ycable/ycable_utilities/__init__.py 0 0 100%
ycable/ycable_utilities/y_cable_helper.py 2593 531 80%
ycable/ycable_utilities/y_cable_table_helper.py 365 24 93%
---------------------------------------------------------------------
TOTAL 3226 644 80%
Coverage HTML written to dir htmlcov
Coverage XML written to file coverage.xml
======================= 273 passed, 3 warnings in 13.12s =======================
running bdist_wheel
running build
running build_py
Generating grammar tables from /usr/lib/python3.9/lib2to3/Grammar.txt
Generating grammar tables from /usr/lib/python3.9/lib2to3/PatternGrammar.txt
copying proto_out/linkmgr_grpc_driver_pb2_grpc.py -> build/lib/proto_out
copying proto_out/linkmgr_grpc_driver_pb2.py -> build/lib/proto_out
installing to build/bdist.linux-x86_64/wheel
running install
running install_lib
creating build/bdist.linux-x86_64/wheel
creating build/bdist.linux-x86_64/wheel/tests
copying build/lib/tests/test_y_cable_helper.py -> build/bdist.linux-x86_64/wheel/tests
copying build/lib/tests/__init__.py -> build/bdist.linux-x86_64/wheel/tests
copying build/lib/tests/test_ycable.py -> build/bdist.linux-x86_64/wheel/tests
copying build/lib/tests/mock_swsscommon.py -> build/bdist.linux-x86_64/wheel/tests
creating build/bdist.linux-x86_64/wheel/proto_out
copying build/lib/proto_out/linkmgr_grpc_driver_pb2_grpc.py -> build/bdist.linux-x86_64/wheel/proto_out
copying build/lib/proto_out/__init__.py -> build/bdist.linux-x86_64/wheel/proto_out
copying build/lib/proto_out/linkmgr_grpc_driver_pb2.py -> build/bdist.linux-x86_64/wheel/proto_out
creating build/bdist.linux-x86_64/wheel/ycable
copying build/lib/ycable/ycable.py -> build/bdist.linux-x86_64/wheel/ycable
creating build/bdist.linux-x86_64/wheel/ycable/ycable_utilities
copying build/lib/ycable/ycable_utilities/y_cable_helper.py -> build/bdist.linux-x86_64/wheel/ycable/ycable_utilities
copying build/lib/ycable/ycable_utilities/y_cable_table_helper.py -> build/bdist.linux-x86_64/wheel/ycable/ycable_utilities
copying build/lib/ycable/ycable_utilities/__init__.py -> build/bdist.linux-x86_64/wheel/ycable/ycable_utilities
copying build/lib/ycable/__init__.py -> build/bdist.linux-x86_64/wheel/ycable
running install_egg_info
running egg_info
writing sonic_ycabled.egg-info/PKG-INFO
writing dependency_links to sonic_ycabled.egg-info/dependency_links.txt
writing entry points to sonic_ycabled.egg-info/entry_points.txt
writing requirements to sonic_ycabled.egg-info/requires.txt
writing top-level names to sonic_ycabled.egg-info/top_level.txt
reading manifest file 'sonic_ycabled.egg-info/SOURCES.txt'
writing manifest file 'sonic_ycabled.egg-info/SOURCES.txt'
Copying sonic_ycabled.egg-info to build/bdist.linux-x86_64/wheel/sonic_ycabled-1.0-py3.9.egg-info
running install_scripts
creating build/bdist.linux-x86_64/wheel/sonic_ycabled-1.0.dist-info/WHEEL
creating 'dist/sonic_ycabled-1.0-py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it
adding 'proto_out/__init__.py'
adding 'proto_out/linkmgr_grpc_driver_pb2.py'
adding 'proto_out/linkmgr_grpc_driver_pb2_grpc.py'
adding 'tests/__init__.py'
adding 'tests/mock_swsscommon.py'
adding 'tests/test_y_cable_helper.py'
adding 'tests/test_ycable.py'
adding 'ycable/__init__.py'
adding 'ycable/ycable.py'
adding 'ycable/ycable_utilities/__init__.py'
adding 'ycable/ycable_utilities/y_cable_helper.py'
adding 'ycable/ycable_utilities/y_cable_table_helper.py'
adding 'sonic_ycabled-1.0.dist-info/METADATA'
adding 'sonic_ycabled-1.0.dist-info/WHEEL'
adding 'sonic_ycabled-1.0.dist-info/entry_points.txt'
adding 'sonic_ycabled-1.0.dist-info/top_level.txt'
adding 'sonic_ycabled-1.0.dist-info/RECORD'
removing build/bdist.linux-x86_64/wheel
/sonic
Build end time: Fri Jul 4 09:05:10 UTC 2025
Elapsed time: 0h 0m 35s
|