# Copyright 2020 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# Syntax: https://docs.pytest.org/en/latest/customize.html

[pytest]
addopts =
  -m 'not (
    config_skew_test
    or legacy_slow
    or mock_error
    or network_test
    or output_test
    or passes_when_run_alone
    or sigterm
  )'
  --strict
  --disable-pytest-warnings
  -n auto
  --quiet
python_files = *_unittest.py
python_classes = cros_test_lib\.TestCase
norecursedirs = third_party venv
markers =
  config_skew_test: Tests which check whether new config matches legacy config
  inside_only: Tests which must be run inside the chroot
  legacy_slow: Tests which are/were marked in run_tests.py as slow tests
  mock_error: Tests which seem to fail due to the old version of mock.py used
      in third_party/
  network_test: Tests which require a network connection to run
  output_test: Tests which fail due to inheriting cros_test_lib.OutputTestCase
  passes_when_run_alone: Tests which pass when explicitly run by name, but which
      fail when run with the whole chromite directory
  redirected_stdin_error: Tests which fail due to pytest redirecting stdin
  requires_portage: Tests which need to import the `portage` package
  sigterm: Tests which exit with code 143 when run from pytest
