tests:Simplify image layout mismatch test
authorTobin Ehlis <tobine@google.com>
Fri, 21 Jul 2017 20:23:29 +0000 (14:23 -0600)
committerTobin Ehlis <tobine@google.com>
Mon, 24 Jul 2017 21:28:18 +0000 (15:28 -0600)
Can change layout in img_barrier instead of creating a separate
renderPass with different layout in subpass attachment reference.
This simplifies RenderPassBarrierConflicts test.

tests/layer_validation_tests.cpp

index 4ae3dfc..45cf488 100644 (file)
@@ -3881,18 +3881,9 @@ TEST_F(VkLayerTest, RenderPassBarrierConflicts) {
                          VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT, VK_DEPENDENCY_BY_REGION_BIT, 0, nullptr, 0, nullptr, 1,
                          &img_barrier);
     m_errorMonitor->VerifyFound();
-    vkCmdEndRenderPass(m_commandBuffer->handle());
-    // Have image barrier layouts mis-match subpass attachment layout
-    // Create RP where subpass has wrong image layout
-    ref.layout = VK_IMAGE_LAYOUT_GENERAL;
-    VkRenderPass rp_badlayout;
-    rpci.dependencyCount = 1;
-    rpci.pDependencies = &dep;
-    err = vkCreateRenderPass(m_device->device(), &rpci, nullptr, &rp_badlayout);
-    ASSERT_VK_SUCCESS(err);
-    rpbi.renderPass = rp_badlayout;
-    vkCmdBeginRenderPass(m_commandBuffer->handle(), &rpbi, VK_SUBPASS_CONTENTS_INLINE);
-    img_barrier.oldLayout = VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL;
+
+    img_barrier.oldLayout = VK_IMAGE_LAYOUT_GENERAL;
+    img_barrier.newLayout = VK_IMAGE_LAYOUT_GENERAL;
     m_errorMonitor->SetDesiredFailureMsg(VK_DEBUG_REPORT_ERROR_BIT_EXT, VALIDATION_ERROR_1b800938);
     vkCmdPipelineBarrier(m_commandBuffer->handle(), VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT,
                          VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT, VK_DEPENDENCY_BY_REGION_BIT, 0, nullptr, 0, nullptr, 1,
@@ -3941,7 +3932,6 @@ TEST_F(VkLayerTest, RenderPassBarrierConflicts) {
     vkDestroyFramebuffer(m_device->device(), fb2, nullptr);
     vkDestroyFramebuffer(m_device->device(), fb, nullptr);
     vkDestroyRenderPass(m_device->device(), rp_badsubindex, nullptr);
-    vkDestroyRenderPass(m_device->device(), rp_badlayout, nullptr);
     vkDestroyRenderPass(m_device->device(), rp, nullptr);
     vkDestroyRenderPass(m_device->device(), rp_noselfdep, nullptr);
 }