tests: Skip tests that will not generate expected error
Change-Id: I5a5ebe72a2080e3d30ce103f6c1caa1addd6557a
diff --git a/tests/layer_validation_tests.cpp b/tests/layer_validation_tests.cpp
index 8b7315f..0df2bdb 100644
--- a/tests/layer_validation_tests.cpp
+++ b/tests/layer_validation_tests.cpp
@@ -2777,7 +2777,7 @@
// the resource.
{
VkDeviceSize image_offset = (image_mem_reqs.size - 1) & ~(image_mem_reqs.alignment - 1);
- if (image_offset > 0) {
+ if ((image_offset > 0) && (image_mem_reqs.size < (image_alloc_info.allocationSize - image_mem_reqs.alignment))) {
m_errorMonitor->SetDesiredFailureMsg(VK_DEBUG_REPORT_ERROR_BIT_EXT, VALIDATION_ERROR_02179);
err = vkBindImageMemory(device(), image, image_mem, image_offset);
(void)err; // This may very well return an error.
@@ -9936,10 +9936,11 @@
descriptor_write.descriptorType = VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER;
descriptor_write.dstSet = descriptor_set;
- m_errorMonitor->SetDesiredFailureMsg(VK_DEBUG_REPORT_ERROR_BIT_EXT, VALIDATION_ERROR_00948);
- vkUpdateDescriptorSets(m_device->device(), 1, &descriptor_write, 0, NULL);
- m_errorMonitor->VerifyFound();
-
+ if (max_ub_range != UINT32_MAX) {
+ m_errorMonitor->SetDesiredFailureMsg(VK_DEBUG_REPORT_ERROR_BIT_EXT, VALIDATION_ERROR_00948);
+ vkUpdateDescriptorSets(m_device->device(), 1, &descriptor_write, 0, NULL);
+ m_errorMonitor->VerifyFound();
+ }
// Reduce size of range to acceptable limit & cause offset error
buff_info.range = max_ub_range;
buff_info.offset = min_ub_align - 1;
@@ -9954,9 +9955,11 @@
descriptor_write.descriptorType = VK_DESCRIPTOR_TYPE_STORAGE_BUFFER;
descriptor_write.dstBinding = 1;
- m_errorMonitor->SetDesiredFailureMsg(VK_DEBUG_REPORT_ERROR_BIT_EXT, VALIDATION_ERROR_00949);
- vkUpdateDescriptorSets(m_device->device(), 1, &descriptor_write, 0, NULL);
- m_errorMonitor->VerifyFound();
+ if (max_ub_range != UINT32_MAX) {
+ m_errorMonitor->SetDesiredFailureMsg(VK_DEBUG_REPORT_ERROR_BIT_EXT, VALIDATION_ERROR_00949);
+ vkUpdateDescriptorSets(m_device->device(), 1, &descriptor_write, 0, NULL);
+ m_errorMonitor->VerifyFound();
+ }
// Reduce size of range to acceptable limit & cause offset error
buff_info.range = max_sb_range;