From 645eca551004f9eea8e2276e9110f3a66a1ddc69 Mon Sep 17 00:00:00 2001 From: Valentin Popov Date: Sat, 18 Jul 2026 08:26:37 +0400 Subject: feat(vulkan): select canonical depth attachment formats --- adapters/fparkan-render-vulkan/src/ffi/tests.rs | 39 +++++++++++++++++++++++++ 1 file changed, 39 insertions(+) (limited to 'adapters/fparkan-render-vulkan/src/ffi') diff --git a/adapters/fparkan-render-vulkan/src/ffi/tests.rs b/adapters/fparkan-render-vulkan/src/ffi/tests.rs index 6cf070e..791fff8 100644 --- a/adapters/fparkan-render-vulkan/src/ffi/tests.rs +++ b/adapters/fparkan-render-vulkan/src/ffi/tests.rs @@ -320,6 +320,45 @@ fn capability_gate_respects_request_specific_depth_profiles() { assert!(report.rejected_devices.is_empty()); } +#[test] +fn depth_attachment_selection_is_canonical_and_request_scoped() { + let supported = [ + vk::Format::D32_SFLOAT_S8_UINT.as_raw(), + vk::Format::D24_UNORM_S8_UINT.as_raw(), + vk::Format::D32_SFLOAT.as_raw(), + ]; + assert_eq!( + select_depth_stencil_attachment_format( + &supported, + DepthStencilSupport { + depth_bits: 24, + stencil_bits: 8, + }, + ), + Some(vk::Format::D24_UNORM_S8_UINT.as_raw()) + ); + assert_eq!( + select_depth_stencil_attachment_format( + &supported, + DepthStencilSupport { + depth_bits: 32, + stencil_bits: 0, + }, + ), + Some(vk::Format::D32_SFLOAT.as_raw()) + ); + assert_eq!( + select_depth_stencil_attachment_format( + &supported, + DepthStencilSupport { + depth_bits: 0, + stencil_bits: 0, + }, + ), + None + ); +} + #[test] fn capability_report_preserves_informational_sampled_formats_and_limits() { let report = select_physical_device(&[device( -- cgit v1.2.3