| 16 | class NegativeRobustness : public VkLayerTest {}; |
| 17 | |
| 18 | TEST_F(NegativeRobustness, PipelineRobustnessDisabled) { |
| 19 | TEST_DESCRIPTION("Create a pipeline using VK_EXT_pipeline_robustness but with pipelineRobustness == VK_FALSE"); |
| 20 | |
| 21 | SetTargetApiVersion(VK_API_VERSION_1_1); |
| 22 | AddRequiredExtensions(VK_EXT_PIPELINE_ROBUSTNESS_EXTENSION_NAME); |
| 23 | AddRequiredExtensions(VK_EXT_ROBUSTNESS_2_EXTENSION_NAME); |
| 24 | AddRequiredFeature(vkt::Feature::robustBufferAccess); |
| 25 | AddRequiredFeature(vkt::Feature::robustBufferAccess2); |
| 26 | RETURN_IF_SKIP(Init()); |
| 27 | |
| 28 | { |
| 29 | VkPipelineRobustnessCreateInfo pipeline_robustness_info = vku::InitStructHelper(); |
| 30 | pipeline_robustness_info.storageBuffers = VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2; |
| 31 | CreateComputePipelineHelper pipe(*this, &pipeline_robustness_info); |
| 32 | |
| 33 | m_errorMonitor->SetDesiredError("VUID-VkPipelineRobustnessCreateInfo-pipelineRobustness-06926"); |
| 34 | pipe.CreateComputePipeline(); |
| 35 | m_errorMonitor->VerifyFound(); |
| 36 | } |
| 37 | |
| 38 | { |
| 39 | VkPipelineRobustnessCreateInfo pipeline_robustness_info = vku::InitStructHelper(); |
| 40 | pipeline_robustness_info.uniformBuffers = VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2; |
| 41 | CreateComputePipelineHelper pipe(*this, &pipeline_robustness_info); |
| 42 | |
| 43 | m_errorMonitor->SetDesiredError("VUID-VkPipelineRobustnessCreateInfo-pipelineRobustness-06927"); |
| 44 | pipe.CreateComputePipeline(); |
| 45 | m_errorMonitor->VerifyFound(); |
| 46 | } |
| 47 | |
| 48 | { |
| 49 | VkPipelineRobustnessCreateInfo pipeline_robustness_info = vku::InitStructHelper(); |
| 50 | pipeline_robustness_info.vertexInputs = VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2; |
| 51 | CreateComputePipelineHelper pipe(*this, &pipeline_robustness_info); |
| 52 | |
| 53 | m_errorMonitor->SetDesiredError("VUID-VkPipelineRobustnessCreateInfo-pipelineRobustness-06928"); |
| 54 | pipe.CreateComputePipeline(); |
| 55 | m_errorMonitor->VerifyFound(); |
| 56 | } |
| 57 | |
| 58 | { |
| 59 | VkPipelineRobustnessCreateInfo pipeline_robustness_info = vku::InitStructHelper(); |
| 60 | pipeline_robustness_info.images = VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_2; |
| 61 | CreateComputePipelineHelper pipe(*this, &pipeline_robustness_info); |
| 62 | |
| 63 | m_errorMonitor->SetDesiredError("VUID-VkPipelineRobustnessCreateInfo-pipelineRobustness-06929"); |
| 64 | pipe.CreateComputePipeline(); |
| 65 | m_errorMonitor->VerifyFound(); |
| 66 | } |
| 67 | } |
| 68 | |
| 69 | TEST_F(NegativeRobustness, PipelineRobustnessDisabledShaderStage) { |
| 70 | TEST_DESCRIPTION("Use VkPipelineShaderStageCreateInfo to set robustness"); |
nothing calls this directly
no test coverage detected