• Show log

    Commit

  • Hash : e9a0cb87
    Author : Yang Gu
    Date : 2020-05-18T17:45:52

    Fix assertion when running tests without suffix on Windows
    
    On Windows, we may omit suffix ".exe" when running an executable.
    However, this will trigger an assertion failure in current code and this
    CL is to fix this issue.
    
    Bug: angleproject:4640
    Change-Id: I7edfdc0b4a7c590c874817530b19a812018b9288
    Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2206425
    Commit-Queue: Jamie Madill <jmadill@chromium.org>
    Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
    

  • Properties

  • Git HTTP https://git.kmx.io/kc3-lang/angle.git
    Git SSH git@git.kmx.io:kc3-lang/angle.git
    Public access ? public
    Description

    A conformant OpenGL ES implementation for Windows, Mac, Linux, iOS and Android.

    Homepage

    Github

    Users
    kc3_lang_org www_kmx_io thodg_w thodg_l thodg thodg_m
    Tags

  • README.md

  • ANGLE Test Harness

    The ANGLE test harness is a harness around GoogleTest that provides functionality similar to the Chromium test harness. It features:

    • splitting a test set into shards
    • catching and reporting crashes and timeouts
    • outputting to the Chromium JSON test results format
    • multi-process execution

    Command-Line Arguments

    The ANGLE test harness accepts all standard GoogleTest arguments. The harness also accepts the following additional command-line arguments:

    • --shard-count and --shard-index control the test sharding
    • --bot-mode enables multi-process execution and test batching
    • --batch-size limits the number of tests to run in each batch
    • --batch-timeout limits the amount of time spent in each batch
    • --max-processes limits the number of simuntaneous processes
    • --test-timeout limits the amount of time spent in each test
    • --results-file specifies a location for the JSON test result output
    • --results-directory specifies a directory to write test results to
    • --filter-file allows passing a larget gtest_filter via a file

    As well as the custom command-line arguments we support a few standard GoogleTest arguments:

    • gtest_filter works as it normally does with GoogleTest
    • gtest_also_run_disabled_tests works as it normally does as well

    Other GoogleTest arguments are not supported although they may work.

    Implementation Notes

    • The test harness only requires angle_common and angle_util.
    • It does not depend on any Chromium browser code. This allows us to compile on other non-Clang platforms.
    • It uses rapidjson to read and write JSON files.
    • Timeouts are detected via a watchdog thread.
    • Crashes are handled via ANGLE’s test crash handling code.
    • Currently it does not entirely support Android or Fuchsia.
    • Test execution is not currently deterministic in multi-process mode.
    • We capture stdout to output test failure reasons.

    See the source code for more details: TestSuite.h and TestSuite.cpp.

    Potential Areas of Improvement

    • Deterministic test execution.
    • Using sockets to communicate with test children. Similar to dEQP’s test harness.
    • Closer integration with ANGLE’s test expectations and system config libraries.
    • Supporting a GoogleTest-free integration.