Edit

kc3-lang/angle/src/tests/deqp_support/README.md

Branch :

  • Show log

    Commit

  • Author : Yuly Novikov
    Date : 2022-01-13 14:49:26
    Hash : 78d482e5
    Message : Add standalone ANGLE Pixel 6 experimental bots The bot only runs dEQP tests with Vulkan backend, not GLES. Also skipping non-Vulkan tests in angle_end2end_tests. Also no perf/trace tests, as these time out uploading to device. Adding suppressions for the failing tests at the same time. Bug: chromium:1280418, angleproject:6819 Bug: angleproject:6898, angleproject:6899, angleproject:6900 Bug: angleproject:6905, angleproject:6907, angleproject:6908 Bug: angleproject:6909, angleproject:6910, angleproject:6916 Bug: angleproject:6917, angleproject:6918, angleproject:6919 Bug: angleproject:6931 Change-Id: I3598e6ff7f458ad7ab2defb86e02a17fbf2d20ca Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3387108 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>

  • src/tests/deqp_support/README.md
  • # dEQP Support
    
    ANGLE integrates dEQP (i.e. the OpenGL CTS) for conformance testing.  It uses gtest to run tests,
    and provides the means for dEQP to use ANGLE.
    
    ## Overriding dEQP files
    
    Occasionally, ANGLE overrides certain dEQP files by copying them to this directory, adding the
    `_override` suffix, and modifying them.  `deqp.gni` is used to select these override files to be
    built with dEQP instead of the original files.
    
    This is primarily done to fix tests until they are fixed upstream.
    
    ## Expectation files format
    
    For every set of dEQP tests, for example GLES3 tests on the Vulkan backend, an expectations file
    exists to let the test harness know which tests it should skip (as they are known to crash), or
    expect to see failed.  Warnings are generated if a test unexpectedly passes, but an unexpected
    failure is an error.  This let's ANGLE ensure there are no regressions.
    
    If multiple test expectations in a file match a specific test due to
    wildcards, the test harness picks the first match in the file as the
    overriding expectation.
    
    While developing a feature, or testing on a new platform, the expectations files can be modified to
    reflect the reality of the situation.  The expected format for every line in these files is:
    
        {BUG#} {MODIFIERS} : {TEST_NAME} = {PASS,FAIL,FLAKY,TIMEOUT,SKIP}
    
    `MODIFIERS` can be a combination of the below list, combined with a logical AND:
    
        WIN XP VISTA WIN7 WIN8 WIN10
        MAC LEOPARD SNOWLEOPARD LION MOUNTAINLION MAVERICKS YOSEMITE ELCAPITAN SIERRA HIGHSIERRA MOJAVE
        LINUX CHROMEOS ANDROID
        NVIDIA AMD INTEL
        DEBUG RELEASE
        D3D9 D3D11 OPENGL GLES VULKAN
        NEXUS5X PIXEL2ORXL PIXEL4ORXL PIXEL6
        QUADROP400
        SWIFTSHADER
        PREROTATION PREROTATION90 PREROTATION180 PREROTATION270
        NOSAN ASAN TSAN UBSAN
    
    `TEST_NAME` can be a specific test name, or set of test names using `'*'` as wildcard anywhere in
    the name.  Examples:
    
        // Disabled everywhere as is too slow:
        3445 : dEQP-GLES31.functional.ssbo.layout.random.all_shared_buffer.48 = SKIP
    
        // Crashes on both D3D11 and OPENGL:
        1442 OPENGL : dEQP-GLES31.functional.separate_shader.* = SKIP
        1442 D3D11 : dEQP-GLES31.functional.separate_shader.* = SKIP
    
        // Unsupported feature:
        3726 VULKAN ANDROID : dEQP-GLES31.functional.synchronization.inter_call.without_memory_barrier.*atomic_counter* = FAIL
    
        // Failing test in Nvidia's OpenGL implementation on windows:
        1665 WIN NVIDIA OPENGL : dEQP-GLES31.functional.draw_indirect.negative.command_offset_not_in_buffer_unsigned32_wrap = FAIL
    
        // Failing when emulated pre-rotation is enabled, no matter which angle:
        1234 PREROTATION : dEQP-GLES3.*blit* = FAIL
    
        // Failing when emulated pre-rotation is enabled with 270 degree angle:
        1234 PREROTATION270 : dEQP-GLES3.*blit* = FAIL
    
        // Flaky when run with thread-sanitizer (TSan)
        6678 TSAN : dEQP-EGL.functional.sharing.gles2.multithread.random* = FLAKY