Edit

kc3-lang/angle/src/tests/angle_unittests_utils.h

Branch :

  • Show log

    Commit

  • Author : Jamie Madill
    Date : 2015-07-09 14:22:07
    Hash : 8e34494f
    Message : Share data between VertexArray and Impl. Using the same design as for the Framebuffer::Data helper, we can use a struct to share between the object and the Impl. This also gives the Impl access to the maxEnabledAttrib, and saves some duplicated storage. BUG=angleproject:1040 TEST=WebGL CTS, end2end_tests, unittests Change-Id: I55c91e8a5f3dcae302cab441182320aafd5375ef Reviewed-on: https://chromium-review.googlesource.com/283930 Tested-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>

  • src/tests/angle_unittests_utils.h
  • //
    // Copyright 2015 The ANGLE Project Authors. All rights reserved.
    // Use of this source code is governed by a BSD-style license that can be
    // found in the LICENSE file.
    //
    // angle_unittests_utils.h:
    //   Helpers for mocking and unit testing.
    
    #ifndef TESTS_ANGLE_UNITTESTS_UTILS_H_
    #define TESTS_ANGLE_UNITTESTS_UTILS_H_
    
    #include "libANGLE/renderer/ImplFactory.h"
    
    namespace rx
    {
    
    // Useful when mocking a part of the ImplFactory class
    class NullFactory : public ImplFactory
    {
      public:
        NullFactory() {}
    
        // Shader creation
        CompilerImpl *createCompiler(const gl::Data &data) override { return nullptr; }
        ShaderImpl *createShader(GLenum type) override { return nullptr; }
        ProgramImpl *createProgram() override { return nullptr; }
    
        // Framebuffer creation
        FramebufferImpl *createDefaultFramebuffer(const gl::Framebuffer::Data &data) override { return nullptr; }
        FramebufferImpl *createFramebuffer(const gl::Framebuffer::Data &data) override { return nullptr; }
    
        // Texture creation
        TextureImpl *createTexture(GLenum target) override { return nullptr; }
    
        // Renderbuffer creation
        RenderbufferImpl *createRenderbuffer() override { return nullptr; }
    
        // Buffer creation
        BufferImpl *createBuffer() override { return nullptr; }
    
        // Vertex Array creation
        VertexArrayImpl *createVertexArray(const gl::VertexArray::Data &data) override { return nullptr; }
    
        // Query and Fence creation
        QueryImpl *createQuery(GLenum type) override { return nullptr; }
        FenceNVImpl *createFenceNV() override { return nullptr; }
        FenceSyncImpl *createFenceSync() override { return nullptr; }
    
        // Transform Feedback creation
        TransformFeedbackImpl *createTransformFeedback() override { return nullptr; }
    };
    
    }
    
    #endif // TESTS_ANGLE_UNITTESTS_UTILS_H_