chromium/third_party/angle/src/tests/test_utils/angle_test_instantiate.cpp

//
// Copyright 2014 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_test_instantiate.cpp: Adds support for filtering parameterized
// tests by platform, so we skip unsupported configs.

#include "test_utils/angle_test_instantiate.h"

#include <algorithm>
#include <array>
#include <iostream>
#include <map>

#include "angle_gl.h"
#include "common/base/anglebase/no_destructor.h"
#include "common/debug.h"
#include "common/platform.h"
#include "common/system_utils.h"
#include "gpu_info_util/SystemInfo.h"
#include "test_utils/angle_test_configs.h"
#include "util/EGLWindow.h"
#include "util/OSWindow.h"
#include "util/test_utils.h"

#if defined(ANGLE_PLATFORM_WINDOWS)
#    include <VersionHelpers.h>
#    include "util/windows/WGLWindow.h"
#endif  // defined(ANGLE_PLATFORM_WINDOWS)

#if defined(ANGLE_PLATFORM_APPLE)
#    include "test_utils/angle_test_instantiate_apple.h"
#endif

namespace angle
{
namespace
{
bool IsEGLConfigSupported(const PlatformParameters &param,
                          OSWindow *osWindow,
                          const char *eglLibraryName)
{}

bool IsAngleEGLConfigSupported(const PlatformParameters &param, OSWindow *osWindow)
{}

bool IsAngleVulkanSecondariesEGLConfigSupported(const PlatformParameters &param, OSWindow *osWindow)
{}

bool IsSystemWGLConfigSupported(const PlatformParameters &param, OSWindow *osWindow)
{}

bool IsSystemEGLConfigSupported(const PlatformParameters &param, OSWindow *osWindow)
{}

bool IsZinkEGLConfigSupported(const PlatformParameters &param, OSWindow *osWindow)
{}

bool IsAndroidDevice(const std::string &deviceName)
{}

bool IsAndroidSdkLevelOrNewer(int level)
{}

bool IsAndroid9OrNewer()
{}

GPUDeviceInfo *GetActiveGPUDeviceInfo()
{}

bool HasSystemVendorID(VendorID vendorID)
{}

bool HasSystemDeviceID(VendorID vendorID, DeviceID deviceID)
{}

ParamAvailabilityCache;

ParamAvailabilityCache &GetAvailabilityCache()
{}

constexpr size_t kMaxConfigNameLen =;
std::array<char, kMaxConfigNameLen> gSelectedConfig;
}  // namespace

bool gEnableANGLEPerTestCaptureLabel =;

bool IsConfigSelected()
{}

#if !defined(ANGLE_PLATFORM_APPLE)
// For Apple platform, see angle_test_instantiate_apple.mm
bool IsMetalTextureSwizzleAvailable()
{}
#endif

SystemInfo *GetTestSystemInfo()
{}

bool IsARM64()
{}

bool IsOzone()
{}

bool IsNexus5X()
{}

bool IsNexus9()
{}

bool IsPixelXL()
{}

bool IsPixel2()
{}

bool IsPixel2XL()
{}

bool IsPixel4()
{}

bool IsPixel4XL()
{}

bool IsPixel6()
{}

bool IsGalaxyS22()
{}

bool IsNVIDIAShield()
{}

bool IsAndroid14OrNewer()
{}

bool IsIntel()
{}

bool IsIntelUHD630Mobile()
{}

bool IsAMD()
{}

bool IsAppleGPU()
{}

bool IsARM()
{}

bool IsSwiftshaderDevice()
{}

bool IsSwiftShaderSupported()
{}

bool IsNVIDIA()
{}

bool IsQualcomm()
{}

bool HasMesa()
{}

bool IsConfigAllowlisted(const SystemInfo &systemInfo, const PlatformParameters &param)
{}

bool IsConfigSupported(const PlatformParameters &param)
{}

bool IsPlatformAvailable(const PlatformParameters &param)
{}

std::vector<std::string> GetAvailableTestPlatformNames()
{}

void SetSelectedConfig(const char *selectedConfig)
{}

GLESDriverType GetDriverTypeFromString(const char *driverName, GLESDriverType defaultDriverType)
{}
}  // namespace angle