# Diagnostics utility test ecu configuration
# These faults do not represent real robot faults or reactions
# Highly Confidential and Proprietary Zoox Information. Copyright (c) Zoox.

imports:
  - firmware/common/can/dbc/bmu_alerts.h
  - firmware/common/can/dbc/tbc_alerts.h
  - firmware/common/can/dbc/vh6/vh6b/bbc_alerts.h
  - firmware/common/can/dbc/vh6/vh6b/dcu_alerts.h
  - firmware/common/can/dbc/vh6/vh6b/src_alerts.h
  - firmware/common/can/dbc/vh6/vox_alerts.h
  - firmware/common/can/dbc/vh6/mon_alerts.h
ecus:
  # verify ecu arrays with specific part number
  - ecu_path: /ecus/vox/0/protocol_version
    collector: vox::VOX1Faults
    value: EMU_V1
  - ecu_path: /ecus/vox/1/protocol_version
    collector: vox::VOX2Faults
    value: EMU_V1
  # verify single ecu without part number
  - ecu_path: /ecus/tbc
    collector: tbc::TBCFaults
  - ecu_path: /ecus/bbc
    collector: bbc::BBCFaults
  # verify ecus with a part number that don't match anything in UC
  - ecu_path: /ecus/bmu/info/part_num
    collector: bmu::BMUFaults
    value: "P00003825-01"
  # verify ecu with specific board version
  - ecu_path: /ecus/src/0/version
    value: SRC_V2_0
    collector: src::SRC1Faults
  # verify ecus with a board version that doesn't match that from UC
  - ecu_path: /ecus/dcu/0/version
    value: DCU_V0
    collector: dcu::DCU1Faults
  # verify ecus that doesn't exist in UC
  - ecu_path: /invalid
    collector: bbc::BBCFaults
  - ecu_path: /emu
    collector: mon::MONFaults
