diff --git a/tests/vkrenderframework.cpp b/tests/vkrenderframework.cpp
index 0f2eb03..28a0235 100644
--- a/tests/vkrenderframework.cpp
+++ b/tests/vkrenderframework.cpp
@@ -69,13 +69,6 @@
     return is_depth;
 }
 
-// Return true if format is a depth or stencil format
-bool vk_format_is_depth_or_stencil(VkFormat format) {
-    return (vk_format_is_depth_and_stencil(format) ||
-            vk_format_is_depth_only(format) ||
-            vk_format_is_stencil_only(format));
-}
-
 VkRenderFramework::VkRenderFramework()
     : inst(VK_NULL_HANDLE), m_device(NULL), m_commandPool(VK_NULL_HANDLE),
       m_commandBuffer(NULL), m_renderPass(VK_NULL_HANDLE),
@@ -800,15 +793,12 @@
         newLayout = m_descriptorImageInfo.imageLayout;
 
     VkImageAspectFlags image_aspect = 0;
-    if (vk_format_is_depth_or_stencil(fmt)) {
-        if (vk_format_is_depth_and_stencil(fmt)) {
-            image_aspect =
-                VK_IMAGE_ASPECT_STENCIL_BIT | VK_IMAGE_ASPECT_DEPTH_BIT;
-        } else if (vk_format_is_depth_only(fmt)) {
-            image_aspect = VK_IMAGE_ASPECT_DEPTH_BIT;
-        } else { // stencil-only case
-            image_aspect = VK_IMAGE_ASPECT_STENCIL_BIT;
-        }
+    if (vk_format_is_depth_and_stencil(fmt)) {
+        image_aspect = VK_IMAGE_ASPECT_STENCIL_BIT | VK_IMAGE_ASPECT_DEPTH_BIT;
+    } else if (vk_format_is_depth_only(fmt)) {
+        image_aspect = VK_IMAGE_ASPECT_DEPTH_BIT;
+    } else if (vk_format_is_stencil_only(fmt)) {
+        image_aspect = VK_IMAGE_ASPECT_STENCIL_BIT;
     } else { // color
         image_aspect = VK_IMAGE_ASPECT_COLOR_BIT;
     }
