mirror of
https://github.com/esphome/esphome.git
synced 2026-07-10 17:05:36 +00:00
4c027e87ba
Mirrors the existing BluetoothLERawAdvertisementsResponse benchmarks for the remaining proxy message families: ZWaveProxyFrame/ZWaveProxyRequest, SerialProxyDataReceived/SerialProxyWriteRequest, and InfraredRFReceiveEvent/InfraredRFTransmitRawTimingsRequest. Adds minimal stub headers under tests/benchmarks/stubs/ for the zwave_proxy, infrared, radio_frequency, and serial_proxy components so api_connection.cpp compiles without dragging in their UART/RMT/BLE hardware dependencies.
30 lines
1.2 KiB
Python
30 lines
1.2 KiB
Python
import esphome.codegen as cg
|
|
from tests.testing_helpers import ComponentManifestOverride
|
|
|
|
|
|
def override_manifest(manifest: ComponentManifestOverride) -> None:
|
|
# api must run its to_code to define USE_API, USE_API_PLAINTEXT,
|
|
# and add the noise-c library dependency.
|
|
manifest.enable_codegen()
|
|
|
|
original_to_code = manifest.to_code
|
|
|
|
async def to_code(config):
|
|
await original_to_code(config)
|
|
# Enable proxy proto message types for benchmarks. The real
|
|
# components have hardware dependencies (BLE/UART/RMT); lightweight
|
|
# stub headers in tests/benchmarks/stubs/ satisfy the includes.
|
|
cg.add_define("USE_BLUETOOTH_PROXY")
|
|
cg.add_define("BLUETOOTH_PROXY_MAX_CONNECTIONS", 3)
|
|
cg.add_define("BLUETOOTH_PROXY_ADVERTISEMENT_BATCH_SIZE", 16)
|
|
cg.add_define("USE_ZWAVE_PROXY")
|
|
cg.add_define("USE_INFRARED")
|
|
cg.add_define("USE_IR_RF")
|
|
cg.add_define("USE_RADIO_FREQUENCY")
|
|
cg.add_define("USE_SERIAL_PROXY")
|
|
cg.add_define("SERIAL_PROXY_COUNT", 0)
|
|
cg.add_define("ESPHOME_ENTITY_INFRARED_COUNT", 0)
|
|
cg.add_define("ESPHOME_ENTITY_RADIO_FREQUENCY_COUNT", 0)
|
|
|
|
manifest.to_code = to_code
|