[pytest]
# only the files with prefix `pytest_` would be recognized as pytest test scripts.
python_files = pytest_*.py

# ignore PytestExperimentalApiWarning for record_xml_attribute
# set traceback to "short" to prevent the overwhelming tracebacks
addopts =
  -s
  --embedded-services esp,idf
  --tb short
  --skip-check-coredump y

# ignore DeprecationWarning
filterwarnings =
  ignore::DeprecationWarning:matplotlib.*:
  ignore::DeprecationWarning:google.protobuf.*:
  ignore::_pytest.warning_types.PytestExperimentalApiWarning

markers =
  # target markers
  esp32: support esp32 target
  esp32s2: support esp32s2 target
  esp32s3: support esp32s3 target
  esp32c3: support esp32c3 target
  esp32c2: support esp32c2 target
  esp32c6: support esp32c6 target
  esp32h2: support esp32h2 target
  esp32p4: support esp32p4 target

  # env markers
  generic: tests should be run on generic runners

  # multi-dut markers
  multi_dut_generic: tests should be run on generic runners, at least have two duts connected.
  multi_dut_modbus_tcp: Modbus TCP runners with two duts connected
  multi_dut_modbus_rs485: Modbus RTU/ASCII runners with two duts connected
  multi_dut_modbus_serial: Modbus SERIAL runner with two duts (master, slave - additional)
  multi_dut_modbus_generic: Modbus generic runner

# log related
log_cli = True
log_cli_level = INFO
log_cli_format = %(asctime)s %(levelname)s %(message)s
log_cli_date_format = %Y-%m-%d %H:%M:%S

# junit related
junit_family = xunit1

## log all to `system-out` when case fail
junit_logging = stdout
junit_log_passing_tests = False
