Test that deinit deactivates random generation and key slots
diff --git a/tests/suites/test_suite_psa_crypto_init.data b/tests/suites/test_suite_psa_crypto_init.data
index ad90c17..61f067d 100644
--- a/tests/suites/test_suite_psa_crypto_init.data
+++ b/tests/suites/test_suite_psa_crypto_init.data
@@ -1,8 +1,14 @@
 PSA init/deinit
-init_deinit:
+init_deinit:2
 
-PSA validate module initialization: random
-validate_module_init_generate_random:
+No random without init
+validate_module_init_generate_random:0
 
-PSA validate module initialization: key based
-validate_module_init_key_based:
+No key slot access without init
+validate_module_init_key_based:0
+
+No random after deinit
+validate_module_init_generate_random:1
+
+No key slot access after deinit
+validate_module_init_key_based:1
diff --git a/tests/suites/test_suite_psa_crypto_init.function b/tests/suites/test_suite_psa_crypto_init.function
index 4ac76a3..7fccc13 100644
--- a/tests/suites/test_suite_psa_crypto_init.function
+++ b/tests/suites/test_suite_psa_crypto_init.function
@@ -14,11 +14,11 @@
  */
 
 /* BEGIN_CASE */
-void init_deinit( )
+void init_deinit( int count )
 {
     psa_status_t status;
     int i;
-    for( i = 0; i <= 1; i++ )
+    for( i = 0; i < count; i++ )
     {
         status = psa_crypto_init( );
         TEST_ASSERT( status == PSA_SUCCESS );
@@ -30,20 +30,34 @@
 /* END_CASE */
 
 /* BEGIN_CASE */
-void validate_module_init_generate_random( )
+void validate_module_init_generate_random( int count )
 {
     psa_status_t status;
     uint8_t random[10] = { 0 };
+    int i;
+    for( i = 0; i < count; i++ )
+    {
+        status = psa_crypto_init( );
+        TEST_ASSERT( status == PSA_SUCCESS );
+        mbedtls_psa_crypto_free( );
+    }
     status = psa_generate_random( random, sizeof( random ) );
     TEST_ASSERT( status == PSA_ERROR_BAD_STATE );
 }
 /* END_CASE */
 
 /* BEGIN_CASE */
-void validate_module_init_key_based( )
+void validate_module_init_key_based( int count )
 {
     psa_status_t status;
     uint8_t data[10] = { 0 };
+    int i;
+    for( i = 0; i < count; i++ )
+    {
+        status = psa_crypto_init( );
+        TEST_ASSERT( status == PSA_SUCCESS );
+        mbedtls_psa_crypto_free( );
+    }
     status = psa_import_key( 1, PSA_KEY_TYPE_RAW_DATA, data, sizeof( data ) );
     TEST_ASSERT( status == PSA_ERROR_BAD_STATE );
 }