Commit 5f57cc6e by Geoff Lang

Add targets that run the EGL dEQP tests.

Generates lots of assertion failures when run, expectations and assertion fixes to come. BUG=angleproject:1139 Change-Id: Ia55b4b2ca3a7844d8d9d05cb7043cd42d55b86ed Reviewed-on: https://chromium-review.googlesource.com/295243Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org> Reviewed-by: 's avatarCorentin Wallez <cwallez@chromium.org> Tested-by: 's avatarGeoff Lang <geofflang@chromium.org>
parent 5565936c
......@@ -580,6 +580,92 @@
'<(deqp_path)/modules/gles3/tes3TestPackage.hpp',
'<(deqp_path)/modules/gles3/tes3TestPackageEntry.cpp',
],
'deqp_egl_sources':
[
'<(deqp_path)/modules/egl/teglAndroidUtil.cpp',
'<(deqp_path)/modules/egl/teglAndroidUtil.hpp',
'<(deqp_path)/modules/egl/teglApiCase.cpp',
'<(deqp_path)/modules/egl/teglApiCase.hpp',
'<(deqp_path)/modules/egl/teglChooseConfigReference.cpp',
'<(deqp_path)/modules/egl/teglChooseConfigReference.hpp',
'<(deqp_path)/modules/egl/teglChooseConfigTests.cpp',
'<(deqp_path)/modules/egl/teglChooseConfigTests.hpp',
'<(deqp_path)/modules/egl/teglQueryConfigTests.cpp',
'<(deqp_path)/modules/egl/teglQueryConfigTests.hpp',
'<(deqp_path)/modules/egl/teglColorClearCase.cpp',
'<(deqp_path)/modules/egl/teglColorClearCase.hpp',
'<(deqp_path)/modules/egl/teglColorClearTests.cpp',
'<(deqp_path)/modules/egl/teglColorClearTests.hpp',
'<(deqp_path)/modules/egl/teglConfigList.cpp',
'<(deqp_path)/modules/egl/teglConfigList.hpp',
'<(deqp_path)/modules/egl/teglCreateContextTests.cpp',
'<(deqp_path)/modules/egl/teglCreateContextTests.hpp',
'<(deqp_path)/modules/egl/teglQueryContextTests.cpp',
'<(deqp_path)/modules/egl/teglQueryContextTests.hpp',
'<(deqp_path)/modules/egl/teglCreateSurfaceTests.cpp',
'<(deqp_path)/modules/egl/teglCreateSurfaceTests.hpp',
'<(deqp_path)/modules/egl/teglQuerySurfaceTests.cpp',
'<(deqp_path)/modules/egl/teglQuerySurfaceTests.hpp',
'<(deqp_path)/modules/egl/teglGetProcAddressTests.cpp',
'<(deqp_path)/modules/egl/teglGetProcAddressTests.hpp',
'<(deqp_path)/modules/egl/teglGLES1RenderUtil.cpp',
'<(deqp_path)/modules/egl/teglGLES1RenderUtil.hpp',
'<(deqp_path)/modules/egl/teglGLES2RenderUtil.cpp',
'<(deqp_path)/modules/egl/teglGLES2RenderUtil.hpp',
'<(deqp_path)/modules/egl/teglImageUtil.cpp',
'<(deqp_path)/modules/egl/teglImageUtil.hpp',
'<(deqp_path)/modules/egl/teglImageTests.cpp',
'<(deqp_path)/modules/egl/teglImageTests.hpp',
'<(deqp_path)/modules/egl/teglInfoTests.cpp',
'<(deqp_path)/modules/egl/teglInfoTests.hpp',
'<(deqp_path)/modules/egl/teglNegativeApiTests.cpp',
'<(deqp_path)/modules/egl/teglNegativeApiTests.hpp',
'<(deqp_path)/modules/egl/teglRenderCase.cpp',
'<(deqp_path)/modules/egl/teglRenderCase.hpp',
'<(deqp_path)/modules/egl/teglRenderTests.cpp',
'<(deqp_path)/modules/egl/teglRenderTests.hpp',
'<(deqp_path)/modules/egl/teglSimpleConfigCase.cpp',
'<(deqp_path)/modules/egl/teglSimpleConfigCase.hpp',
'<(deqp_path)/modules/egl/teglTestCase.cpp',
'<(deqp_path)/modules/egl/teglTestCase.hpp',
'<(deqp_path)/modules/egl/teglTestPackage.cpp',
'<(deqp_path)/modules/egl/teglTestPackage.hpp',
'<(deqp_path)/modules/egl/teglTestPackageEntry.cpp',
'<(deqp_path)/modules/egl/teglVGRenderUtil.cpp',
'<(deqp_path)/modules/egl/teglVGRenderUtil.hpp',
'<(deqp_path)/modules/egl/teglImageFormatTests.hpp',
'<(deqp_path)/modules/egl/teglImageFormatTests.cpp',
'<(deqp_path)/modules/egl/teglGLES2SharingTests.hpp',
'<(deqp_path)/modules/egl/teglGLES2SharingTests.cpp',
'<(deqp_path)/modules/egl/teglGLES2SharingThreadedTests.hpp',
'<(deqp_path)/modules/egl/teglGLES2SharingThreadedTests.cpp',
'<(deqp_path)/modules/egl/teglSyncTests.hpp',
'<(deqp_path)/modules/egl/teglSyncTests.cpp',
'<(deqp_path)/modules/egl/teglMultiThreadTests.hpp',
'<(deqp_path)/modules/egl/teglMultiThreadTests.cpp',
'<(deqp_path)/modules/egl/teglMemoryStressTests.hpp',
'<(deqp_path)/modules/egl/teglMemoryStressTests.cpp',
'<(deqp_path)/modules/egl/teglMakeCurrentPerfTests.hpp',
'<(deqp_path)/modules/egl/teglMakeCurrentPerfTests.cpp',
'<(deqp_path)/modules/egl/teglGLES2SharedRenderingPerfTests.hpp',
'<(deqp_path)/modules/egl/teglGLES2SharedRenderingPerfTests.cpp',
'<(deqp_path)/modules/egl/teglPreservingSwapTests.hpp',
'<(deqp_path)/modules/egl/teglPreservingSwapTests.cpp',
'<(deqp_path)/modules/egl/teglClientExtensionTests.hpp',
'<(deqp_path)/modules/egl/teglClientExtensionTests.cpp',
'<(deqp_path)/modules/egl/teglCreateContextExtTests.hpp',
'<(deqp_path)/modules/egl/teglCreateContextExtTests.cpp',
'<(deqp_path)/modules/egl/teglSurfacelessContextTests.hpp',
'<(deqp_path)/modules/egl/teglSurfacelessContextTests.cpp',
'<(deqp_path)/modules/egl/teglSwapBuffersTests.hpp',
'<(deqp_path)/modules/egl/teglSwapBuffersTests.cpp',
'<(deqp_path)/modules/egl/teglNativeColorMappingTests.hpp',
'<(deqp_path)/modules/egl/teglNativeColorMappingTests.cpp',
'<(deqp_path)/modules/egl/teglNativeCoordMappingTests.hpp',
'<(deqp_path)/modules/egl/teglNativeCoordMappingTests.cpp',
'<(deqp_path)/modules/egl/teglResizeTests.hpp',
'<(deqp_path)/modules/egl/teglResizeTests.cpp',
],
'deqp_libtester_decpp_sources':
[
'<(deqp_path)/framework/delibs/decpp/deArrayBuffer.cpp',
......@@ -1183,6 +1269,33 @@
],
},
{
'target_name': 'angle_deqp_libegl',
'type': 'shared_library',
'dependencies':
[
'angle_deqp_libtester',
],
'defines':
[
'ANGLE_DEQP_EGL_TESTS',
],
'direct_dependent_settings':
{
'defines':
[
'ANGLE_DEQP_EGL_TESTS',
],
},
'sources':
[
'<@(deqp_egl_sources)',
'deqp_support/angle_deqp_libtester_main.cpp',
'deqp_support/tcuANGLEPlatform.cpp',
'deqp_support/tcuANGLEPlatform.h',
],
},
# Helper target for synching our implementation with chrome's
{
'target_name': 'angle_deqp_gtest_support',
......@@ -1309,6 +1422,19 @@
},
{
'target_name': 'angle_deqp_egl_tests',
'type': 'executable',
'dependencies':
[
'angle_deqp_libegl',
],
'sources':
[
'deqp_support/angle_deqp_tests_main.cpp',
],
},
{
'target_name': 'angle_deqp_gtest_gles2_tests',
'type': 'executable',
'includes': [ '../../build/common_defines.gypi', ],
......@@ -1337,6 +1463,21 @@
'deqp_support/angle_deqp_gtest_main.cpp',
],
},
{
'target_name': 'angle_deqp_gtest_egl_tests',
'type': 'executable',
'includes': [ '../../build/common_defines.gypi', ],
'dependencies':
[
'angle_deqp_gtest_support',
'angle_deqp_libegl',
],
'sources':
[
'deqp_support/angle_deqp_gtest_main.cpp',
],
},
], # targets
}], # (OS=="win" or OS=="linux") and angle_standalone==1
], # conditions
......
......@@ -25,12 +25,14 @@ const char *g_CaseListFiles[] =
{
"dEQP-GLES2-cases.txt.gz",
"dEQP-GLES3-cases.txt.gz",
"dEQP-EGL-cases.txt.gz",
};
const char *g_TestExpectationsFiles[] =
{
"deqp_gles2_test_expectations.txt",
"deqp_gles3_test_expectations.txt",
"deqp_egl_test_expectations.txt",
};
class dEQPCaseList
......@@ -204,6 +206,10 @@ class dEQP_GLES3 : public dEQPTest<1>
{
};
class dEQP_EGL : public dEQPTest<2>
{
};
#ifdef ANGLE_DEQP_GLES2_TESTS
// TODO(jmadill): add different platform configs, or ability to choose platform
TEST_P(dEQP_GLES2, Default)
......@@ -223,4 +229,13 @@ TEST_P(dEQP_GLES3, Default)
INSTANTIATE_TEST_CASE_P(, dEQP_GLES3, dEQP_GLES3::GetTestingRange());
#endif
#ifdef ANGLE_DEQP_EGL_TESTS
TEST_P(dEQP_EGL, Default)
{
runTest();
}
INSTANTIATE_TEST_CASE_P(, dEQP_EGL, dEQP_EGL::GetTestingRange());
#endif
} // anonymous namespace
// 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.
// This file contains a list of defective dEQP conformance tests. The expected
// format is:
// {BUG#} {MODIFIERS} : {TEST_NAME} = {PASS,FAIL,FLAKY,TIMEOUT,SKIP}
//
// MODIFIERS can be a combination of the below list:
// WIN XP VISTA WIN7 MAC LEOPARD SNOWLEOPARD LION LINUX CHROMEOS MOUNTAINLION
// MAVERICKS
// NVIDIA AMD INTEL
// 0xabcd - GPU PCI device ID. Specifying a PCI id requires a vendor.
// DEBUG RELEASE
// TODO(jmadill): Add ANGLE Renderer selection modifiers
//
// TEST_NAME can be a specific test name, or have a '*' in the end, which
// indicates a prefix matching.
//
// Any tests whose expectations are not PASS will be skipped.
//
// Examples:
// 91530 MAC WIN LINUX : context_lost_restored = TIMEOUT
// 91533 WIN : gl_min_uniforms = FAIL
// 91531 MAC WIN LINUX : conformance_more_* = SKIP
// 91532 MAC NVIDIA 0x0640 : tex_image_and_sub_image_2d_with_video = PASS FAIL
////////////////////////////////////////////////////////////////////////////////
//
// Temprory entries: they should be removed once the bugs are fixed.
//
////////////////////////////////////////////////////////////////////////////////
......@@ -30,6 +30,7 @@ deqp_data_path = os.path.join('third_party', 'deqp', 'data')
os.chdir(os.path.join(script_dir, '..'))
run_deqp(os.path.join(path_to_deqp_exe, 'angle_deqp_gles2_tests' + os_suffix))
run_deqp(os.path.join(path_to_deqp_exe, 'angle_deqp_gles3_tests' + os_suffix))
run_deqp(os.path.join(path_to_deqp_exe, 'angle_deqp_egl_tests' + os_suffix))
def compress_case_list(case_file):
with open(os.path.join(deqp_data_path, case_file + '.txt')) as in_handle:
......@@ -41,3 +42,4 @@ def compress_case_list(case_file):
compress_case_list('dEQP-GLES2-cases')
compress_case_list('dEQP-GLES3-cases')
compress_case_list('dEQP-EGL-cases')
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment