image: gitlab.kwant-project.org:5005/qt/research-docker

before_script:
- export PYTHONPATH="."

run tests:
  # Needed because of coverage reports
  script:
    - pip install pytest-cov pytest-randomly pytest-repeat pytest-ruff pytest-regressions
    - py.test
  coverage: '/(?i)total.*? (100(?:\.0+)?\%|[1-9]?\d(?:\.\d+)?\%)$/'
  artifacts:
    paths:
      - htmlcov
    reports:
      junit: junit.xml
      coverage_report:
        coverage_format: cobertura
        path: coverage.xml

run profiler:
  script:
    - pip install memray pyinstrument
    - python profiling/graphene.py
    - memray stats memoryProfile.bin
    - memray summary memoryProfile.bin
  artifacts:
    paths:
      - timeProfile.html
      - memoryProfile.bin