18 ASSERT_TRUE(GetContext());
19 const auto& driver_info =
21 ASSERT_NE(driver_info,
nullptr);
23 ASSERT_TRUE(driver_info->GetAPIVersion().IsAtLeast(
Version{1, 1, 0}));
26 ASSERT_NE(driver_info->GetDriverName(),
"");
27 EXPECT_FALSE(driver_info->IsKnownBadDriver());
57 [&driver_name, qc](VkPhysicalDevice
device,
58 VkPhysicalDeviceProperties* prop) {
60 prop->vendorID = 0x168C;
62 prop->vendorID = 0x13B5;
64 driver_name.copy(prop->deviceName, driver_name.size());
65 prop->deviceType = VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU;
68 return context->GetDriverInfo()->IsKnownBadDriver();
230 [](VkPhysicalDevice
device, VkPhysicalDeviceProperties* prop) {
231 prop->vendorID = 0x144D;
232 prop->deviceType = VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU;
234 prop->apiVersion = (1 << 22) | (1 << 12);
238 EXPECT_TRUE(
context->GetDriverInfo()->IsKnownBadDriver());
243 [](VkPhysicalDevice
device, VkPhysicalDeviceProperties* prop) {
244 prop->vendorID = 0x144D;
245 prop->deviceType = VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU;
247 prop->apiVersion = (1 << 22) | (3 << 12);
251 EXPECT_FALSE(
context->GetDriverInfo()->IsKnownBadDriver());
255 std::shared_ptr<ContextVK>
context =
258 [](VkPhysicalDevice
device, VkPhysicalDeviceProperties* prop) {
259 prop->vendorID = 0x1010;
260 prop->deviceType = VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU;
261 std::string
name =
"PowerVR Rogue GE8320";
262 name.copy(prop->deviceName,
name.size());
266 EXPECT_TRUE(
context->GetDriverInfo()->IsKnownBadDriver());
267 EXPECT_EQ(
context->GetDriverInfo()->GetPowerVRGPUInfo(),
291 std::shared_ptr<ContextVK>
context =
294 [](VkPhysicalDevice
device, VkPhysicalDeviceProperties* prop) {
295 prop->vendorID = 0x1010;
296 prop->deviceType = VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU;
297 std::string
name =
"PowerVR BXM-8-256";
298 name.copy(prop->deviceName,
name.size());
302 EXPECT_FALSE(
context->GetDriverInfo()->IsKnownBadDriver());
303 EXPECT_EQ(
context->GetDriverInfo()->GetPowerVRGPUInfo(),
const std::shared_ptr< ContextVK > & GetParent() const
MockVulkanContextBuilder & SetPhysicalPropertiesCallback(std::function< void(VkPhysicalDevice device, VkPhysicalDeviceProperties *physicalProperties)> physical_properties_callback)