Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rewrite cts_exe.py to handle match logic #2199

Merged
merged 1 commit into from
Oct 17, 2024

Commits on Oct 17, 2024

  1. Rewrite cts_exe.py to handle match logic

    cts_exe.py has been rewritten to include the logic for handling
    .match files. Specifically, it will divide the test space into
    two halves; tests that are expected to pass, and those that are
    expected to fail.
    
    For the tests expected to pass, it will run them all in the same
    gtest invocation with the assumption that it succeeds. For the
    tests expected to fail, they will each be ran with individual
    gtest invocations. This allows them to freely segfault or abort
    without hurting other tests.
    
    In this commit, the match files are (mostly) unchanged, and the
    passing and failing tests should be the same. The match file is
    treated as a list of failing tests with a few tokens that are
    replaced:
    * `{{NONDETERMINISTIC}}` ignored, required for compatibility with the
      match checker.
    * `{{OPT}}` this test may or may not fail. It's still ran seperately,
      but doesn't report an error on failure.
    * `{{.*}}` replaced with `*`; converts "match" wildcard matches to
      "gtest" test name matches.
    * `#` and empty lines are ignored and treated as a comment.
    * `{{Segmentation` for compatibility, this will cause a failure in
      the "excepted success" execution to not count as an error. This
      matches the behaviour of the prior match test logic.
    
    Some .match files have been fixed and empty ones have been removed.
    
    If GTEST_OUTPUT is specified, we assume that we are being run in
    ctest_parser.py and don't do anything fancy.
    RossBrunton committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    ff06878 View commit details
    Browse the repository at this point in the history