Reorder PSA test cases to group them by topic
* init-deinit
* import-export
* policies
* lifetime
* hash
* MAC
* cipher
* AEAD
* asymmetric sign
* asymmetric verify
* asymmetric encrypt-decrypt
This commit only moves test functions and test cases around. It does
not modify, add or remove tests.
diff --git a/tests/suites/test_suite_psa_crypto.function b/tests/suites/test_suite_psa_crypto.function
index 69deba1..9dbf034 100644
--- a/tests/suites/test_suite_psa_crypto.function
+++ b/tests/suites/test_suite_psa_crypto.function
@@ -208,6 +208,149 @@
/* END_CASE */
/* BEGIN_CASE */
+void key_policy( int usage_arg, int alg_arg )
+{
+ int key_slot = 1;
+ psa_algorithm_t alg = alg_arg;
+ psa_key_usage_t usage = usage_arg;
+ psa_key_type_t key_type = PSA_KEY_TYPE_AES;
+ unsigned char key[32] = {0};
+ psa_key_policy_t policy_set;
+ psa_key_policy_t policy_get;
+
+ memset( key, 0x2a, sizeof( key ) );
+
+ TEST_ASSERT( psa_crypto_init( ) == PSA_SUCCESS );
+
+ psa_key_policy_init( &policy_set );
+ psa_key_policy_init( &policy_get );
+
+ psa_key_policy_set_usage( &policy_set, usage, alg );
+
+ TEST_ASSERT( psa_key_policy_get_usage( &policy_set ) == usage );
+ TEST_ASSERT( psa_key_policy_get_algorithm( &policy_set ) == alg );
+ TEST_ASSERT( psa_set_key_policy( key_slot, &policy_set ) == PSA_SUCCESS );
+
+ TEST_ASSERT( psa_import_key( key_slot, key_type,
+ key, sizeof( key ) ) == PSA_SUCCESS );
+
+ TEST_ASSERT( psa_get_key_policy( key_slot, &policy_get ) == PSA_SUCCESS );
+
+ TEST_ASSERT( policy_get.usage == policy_set.usage );
+ TEST_ASSERT( policy_get.alg == policy_set.alg );
+
+exit:
+ psa_destroy_key( key_slot );
+ mbedtls_psa_crypto_free( );
+}
+/* END_CASE */
+
+/* BEGIN_CASE */
+void key_policy_fail( int usage_arg, int alg_arg, int expected_status,
+ data_t *keypair )
+{
+ int key_slot = 1;
+ psa_algorithm_t alg = alg_arg;
+ psa_key_usage_t usage = usage_arg;
+ size_t signature_length = 0;
+ psa_key_policy_t policy;
+ int actual_status = PSA_SUCCESS;
+
+ TEST_ASSERT( psa_crypto_init( ) == PSA_SUCCESS );
+
+ psa_key_policy_init( &policy );
+ psa_key_policy_set_usage( &policy, usage, alg );
+ TEST_ASSERT( psa_set_key_policy( key_slot, &policy ) == PSA_SUCCESS );
+
+ if( usage & PSA_KEY_USAGE_EXPORT )
+ {
+ TEST_ASSERT( keypair != NULL );
+ TEST_ASSERT( PSA_CRYPTO_TEST_SIZE_T_RANGE( keypair->len ) );
+ TEST_ASSERT( psa_import_key( key_slot,
+ PSA_KEY_TYPE_RSA_KEYPAIR,
+ keypair->x,
+ keypair->len ) == PSA_SUCCESS );
+ actual_status = psa_asymmetric_sign( key_slot, alg,
+ NULL, 0,
+ NULL, 0,
+ NULL, 0, &signature_length );
+ }
+
+ if( usage & PSA_KEY_USAGE_SIGN )
+ {
+ TEST_ASSERT( keypair != NULL );
+ TEST_ASSERT( PSA_CRYPTO_TEST_SIZE_T_RANGE( keypair->len ) );
+ TEST_ASSERT( psa_import_key( key_slot,
+ PSA_KEY_TYPE_RSA_KEYPAIR,
+ keypair->x,
+ keypair->len ) == PSA_SUCCESS );
+ actual_status = psa_export_key( key_slot, NULL, 0, NULL );
+ }
+
+ TEST_ASSERT( actual_status == expected_status );
+
+exit:
+ psa_destroy_key( key_slot );
+ mbedtls_psa_crypto_free( );
+}
+/* END_CASE */
+
+/* BEGIN_CASE */
+void key_lifetime( int lifetime_arg )
+{
+ int key_slot = 1;
+ psa_key_type_t key_type = PSA_ALG_CBC_BASE;
+ unsigned char key[32] = {0};
+ psa_key_lifetime_t lifetime_set = lifetime_arg;
+ psa_key_lifetime_t lifetime_get;
+
+ memset( key, 0x2a, sizeof( key ) );
+
+ TEST_ASSERT( psa_crypto_init( ) == PSA_SUCCESS );
+
+ TEST_ASSERT( psa_set_key_lifetime( key_slot,
+ lifetime_set ) == PSA_SUCCESS );
+
+ TEST_ASSERT( psa_import_key( key_slot, key_type,
+ key, sizeof( key ) ) == PSA_SUCCESS );
+
+ TEST_ASSERT( psa_get_key_lifetime( key_slot,
+ &lifetime_get ) == PSA_SUCCESS );
+
+ TEST_ASSERT( lifetime_get == lifetime_set );
+
+exit:
+ psa_destroy_key( key_slot );
+ mbedtls_psa_crypto_free( );
+}
+/* END_CASE */
+
+/* BEGIN_CASE */
+void key_lifetime_set_fail( int key_slot_arg,
+ int lifetime_arg,
+ int expected_status_arg )
+{
+ psa_key_slot_t key_slot = key_slot_arg;
+ psa_key_lifetime_t lifetime_set = lifetime_arg;
+ psa_status_t actual_status;
+ psa_status_t expected_status = expected_status_arg;
+
+ TEST_ASSERT( psa_crypto_init( ) == PSA_SUCCESS );
+
+ actual_status = psa_set_key_lifetime( key_slot, lifetime_set );
+
+ if( actual_status == PSA_SUCCESS )
+ actual_status = psa_set_key_lifetime( key_slot, lifetime_set );
+
+ TEST_ASSERT( expected_status == actual_status );
+
+exit:
+ psa_destroy_key( key_slot );
+ mbedtls_psa_crypto_free( );
+}
+/* END_CASE */
+
+/* BEGIN_CASE */
void hash_finish( int alg_arg, data_t *input, data_t *expected_hash )
{
psa_algorithm_t alg = alg_arg;
@@ -1087,149 +1230,6 @@
/* END_CASE */
/* BEGIN_CASE */
-void key_policy( int usage_arg, int alg_arg )
-{
- int key_slot = 1;
- psa_algorithm_t alg = alg_arg;
- psa_key_usage_t usage = usage_arg;
- psa_key_type_t key_type = PSA_KEY_TYPE_AES;
- unsigned char key[32] = {0};
- psa_key_policy_t policy_set;
- psa_key_policy_t policy_get;
-
- memset( key, 0x2a, sizeof( key ) );
-
- TEST_ASSERT( psa_crypto_init( ) == PSA_SUCCESS );
-
- psa_key_policy_init( &policy_set );
- psa_key_policy_init( &policy_get );
-
- psa_key_policy_set_usage( &policy_set, usage, alg );
-
- TEST_ASSERT( psa_key_policy_get_usage( &policy_set ) == usage );
- TEST_ASSERT( psa_key_policy_get_algorithm( &policy_set ) == alg );
- TEST_ASSERT( psa_set_key_policy( key_slot, &policy_set ) == PSA_SUCCESS );
-
- TEST_ASSERT( psa_import_key( key_slot, key_type,
- key, sizeof( key ) ) == PSA_SUCCESS );
-
- TEST_ASSERT( psa_get_key_policy( key_slot, &policy_get ) == PSA_SUCCESS );
-
- TEST_ASSERT( policy_get.usage == policy_set.usage );
- TEST_ASSERT( policy_get.alg == policy_set.alg );
-
-exit:
- psa_destroy_key( key_slot );
- mbedtls_psa_crypto_free( );
-}
-/* END_CASE */
-
-/* BEGIN_CASE */
-void key_policy_fail( int usage_arg, int alg_arg, int expected_status,
- data_t *keypair )
-{
- int key_slot = 1;
- psa_algorithm_t alg = alg_arg;
- psa_key_usage_t usage = usage_arg;
- size_t signature_length = 0;
- psa_key_policy_t policy;
- int actual_status = PSA_SUCCESS;
-
- TEST_ASSERT( psa_crypto_init( ) == PSA_SUCCESS );
-
- psa_key_policy_init( &policy );
- psa_key_policy_set_usage( &policy, usage, alg );
- TEST_ASSERT( psa_set_key_policy( key_slot, &policy ) == PSA_SUCCESS );
-
- if( usage & PSA_KEY_USAGE_EXPORT )
- {
- TEST_ASSERT( keypair != NULL );
- TEST_ASSERT( PSA_CRYPTO_TEST_SIZE_T_RANGE( keypair->len ) );
- TEST_ASSERT( psa_import_key( key_slot,
- PSA_KEY_TYPE_RSA_KEYPAIR,
- keypair->x,
- keypair->len ) == PSA_SUCCESS );
- actual_status = psa_asymmetric_sign( key_slot, alg,
- NULL, 0,
- NULL, 0,
- NULL, 0, &signature_length );
- }
-
- if( usage & PSA_KEY_USAGE_SIGN )
- {
- TEST_ASSERT( keypair != NULL );
- TEST_ASSERT( PSA_CRYPTO_TEST_SIZE_T_RANGE( keypair->len ) );
- TEST_ASSERT( psa_import_key( key_slot,
- PSA_KEY_TYPE_RSA_KEYPAIR,
- keypair->x,
- keypair->len ) == PSA_SUCCESS );
- actual_status = psa_export_key( key_slot, NULL, 0, NULL );
- }
-
- TEST_ASSERT( actual_status == expected_status );
-
-exit:
- psa_destroy_key( key_slot );
- mbedtls_psa_crypto_free( );
-}
-/* END_CASE */
-
-/* BEGIN_CASE */
-void key_lifetime( int lifetime_arg )
-{
- int key_slot = 1;
- psa_key_type_t key_type = PSA_ALG_CBC_BASE;
- unsigned char key[32] = {0};
- psa_key_lifetime_t lifetime_set = lifetime_arg;
- psa_key_lifetime_t lifetime_get;
-
- memset( key, 0x2a, sizeof( key ) );
-
- TEST_ASSERT( psa_crypto_init( ) == PSA_SUCCESS );
-
- TEST_ASSERT( psa_set_key_lifetime( key_slot,
- lifetime_set ) == PSA_SUCCESS );
-
- TEST_ASSERT( psa_import_key( key_slot, key_type,
- key, sizeof( key ) ) == PSA_SUCCESS );
-
- TEST_ASSERT( psa_get_key_lifetime( key_slot,
- &lifetime_get ) == PSA_SUCCESS );
-
- TEST_ASSERT( lifetime_get == lifetime_set );
-
-exit:
- psa_destroy_key( key_slot );
- mbedtls_psa_crypto_free( );
-}
-/* END_CASE */
-
-/* BEGIN_CASE */
-void key_lifetime_set_fail( int key_slot_arg,
- int lifetime_arg,
- int expected_status_arg )
-{
- psa_key_slot_t key_slot = key_slot_arg;
- psa_key_lifetime_t lifetime_set = lifetime_arg;
- psa_status_t actual_status;
- psa_status_t expected_status = expected_status_arg;
-
- TEST_ASSERT( psa_crypto_init( ) == PSA_SUCCESS );
-
- actual_status = psa_set_key_lifetime( key_slot, lifetime_set );
-
- if( actual_status == PSA_SUCCESS )
- actual_status = psa_set_key_lifetime( key_slot, lifetime_set );
-
- TEST_ASSERT( expected_status == actual_status );
-
-exit:
- psa_destroy_key( key_slot );
- mbedtls_psa_crypto_free( );
-}
-/* END_CASE */
-
-/* BEGIN_CASE */
void asymmetric_verify( int key_type_arg, data_t *key_data,
int alg_arg, data_t *hash_data,
data_t *signature_data )