// // Copyright 2018 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. // // OES_standard_derivatives_test.cpp: // Test for OES_standard_derivatives // #include "tests/test_utils/ShaderExtensionTest.h" OESStandardDerivativesTest; namespace { const char OESPragma[] = …; // Shader calling dFdx() const char ESSL100_DfdxShader[] = …; // Shader calling dFdy() const char ESSL100_DfdyShader[] = …; // Shader calling fwidth() const char ESSL100_FwidthShader[] = …; // Extension flag is required to compile properly. Expect failure when it is // not present. TEST_P(OESStandardDerivativesTest, CompileFailsWithoutExtension) { … } // Extension directive is required to compile properly. Expect failure when // it is not present. TEST_P(OESStandardDerivativesTest, CompileFailsWithExtensionWithoutPragma) { … } // With extension flag and extension directive, compiling succeeds. // Also test that the extension directive state is reset correctly. TEST_P(OESStandardDerivativesTest, CompileSucceedsWithExtensionAndPragma) { … } // The SL #version 100 shaders that are correct work similarly // in both GL2 and GL3, with and without the version string. INSTANTIATE_TEST_SUITE_P(…); } // anonymous namespace