aboutsummaryrefslogtreecommitdiff
path: root/adapters/fparkan-render-vulkan/src/ffi
diff options
context:
space:
mode:
Diffstat (limited to 'adapters/fparkan-render-vulkan/src/ffi')
-rw-r--r--adapters/fparkan-render-vulkan/src/ffi/tests.rs39
1 files changed, 39 insertions, 0 deletions
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
@@ -321,6 +321,45 @@ fn capability_gate_respects_request_specific_depth_profiles() {
}
#[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(
"Telemetry GPU",