Move typ's expectation-processing code into expectations_parser.py.

Prior to this CL, the logic for handling test expectations in typ
was mostly split between runner.py and expectations_parser.py.
runner.py was a fine location for actually loading the file contents,
but most of the logic of actually parsing and handling the expectations
isn't all that germane to running the tests, so it was bloating the
code. Plus, having a file dedicated only to parsing the tagged test list
format was a bit excessive.

So, this CL moves the logic for figuring out the expected results for
a given test into expectations_parser.py and renames some of the classes
a bit to be more generic. This simplifies runner.py a bit and complicates
expectations_parser.py, but that's probably the right tradeoff.

It also makes expectations_parser.py a less-accurate name for the file.
It should probably be renamed to expectations.py, but I avoid doing that
in this CL to minimize the size of the diff to review.

Bug: chromium:835690
Change-Id: I4c8cc16547489c409d9cab6fa7b10910582ad83e
Reviewed-on: https://chromium-review.googlesource.com/c/1352282
Commit-Queue: Dirk Pranke <dpranke@chromium.org>
Reviewed-by: Ned Nguyen <nednguyen@google.com>
4 files changed
tree: d13b861f51c68b1a9ea07def2dc6921e11eea645
  1. bin/
  2. catapult_build/
  3. common/
  4. dashboard/
  5. dependency_manager/
  6. devil/
  7. docs/
  8. experimental/
  9. firefighter/
  10. hooks/
  11. infra/
  12. netlog_viewer/
  13. systrace/
  14. telemetry/
  15. third_party/
  16. trace_processor/
  17. tracing/
  18. web_page_replay_go/
  19. .eslintignore
  20. .eslintrc
  21. .gitignore
  22. .vpython
  23. AUTHORS
  24. BUILD.gn
  25. codereview.settings
  26. CONTRIBUTING.md
  27. generate_telemetry_build.py
  28. LICENSE
  29. navbar.md
  30. OWNERS
  31. PRESUBMIT.py
  32. pylintrc
  33. README.md
  34. WATCHLISTS
README.md

Catapult

Catapult is the home for several performance tools that span from gathering, displaying and analyzing performance data. This includes:

These tools were created by Chromium developers for performance analysis, testing, and monitoring of Chrome, but they can also be used for analyzing and monitoring websites, and eventually Android apps.

Contributing

Please see our contributor's guide

Current build status