diff --git a/tests/suites/test_suite_cipher.function b/tests/suites/test_suite_cipher.function
index 99e1d11..34ffbbf 100644
--- a/tests/suites/test_suite_cipher.function
+++ b/tests/suites/test_suite_cipher.function
@@ -119,7 +119,8 @@
     mbedtls_cipher_free( ctx );
     mbedtls_cipher_init( ctx );
 
-#if !defined(MBEDTLS_USE_PSA_CRYPTO) || defined(MBEDTLS_DEPRECATED_REMOVED)
+#if !defined(MBEDTLS_USE_PSA_CRYPTO) || defined(MBEDTLS_DEPRECATED_REMOVED) || \
+    !defined(MBEDTLS_TEST_DEPRECATED)
     (void) use_psa;
     (void) tag_len;
 #else
@@ -130,7 +131,8 @@
                               tag_len ) );
     }
     else
-#endif /* !MBEDTLS_USE_PSA_CRYPTO || MBEDTLS_DEPRECATED_REMOVED */
+#endif /* !MBEDTLS_USE_PSA_CRYPTO || MBEDTLS_DEPRECATED_REMOVED ||
+          !MBEDTLS_TEST_DEPRECATED */
     {
         TEST_ASSERT( 0 == mbedtls_cipher_setup( ctx,
                               mbedtls_cipher_info_from_type( cipher_id ) ) );
@@ -1072,7 +1074,8 @@
     memset( output, 0x00, sizeof( output ) );
 
     /* Prepare context */
-#if !defined(MBEDTLS_USE_PSA_CRYPTO) || defined(MBEDTLS_DEPRECATED_REMOVED)
+#if !defined(MBEDTLS_USE_PSA_CRYPTO) || defined(MBEDTLS_DEPRECATED_REMOVED) || \
+    !defined(MBEDTLS_TEST_DEPRECATED)
     (void) use_psa;
 #else
     if( use_psa == 1 )
@@ -1082,7 +1085,8 @@
                               mbedtls_cipher_info_from_type( cipher_id ), 0 ) );
     }
     else
-#endif /* !MBEDTLS_USE_PSA_CRYPTO || MBEDTLS_DEPRECATED_REMOVED */
+#endif /* !MBEDTLS_USE_PSA_CRYPTO || MBEDTLS_DEPRECATED_REMOVED ||
+          !MBEDTLS_TEST_DEPRECATED*/
     TEST_ASSERT( 0 == mbedtls_cipher_setup( &ctx,
                               mbedtls_cipher_info_from_type( cipher_id ) ) );
 
