Test the length of cipher_update output

In multipart cipher tests, test that each step of psa_cipher_update
produces output of the expected length. The length is hard-coded in
the test data since it depends on the mode.

The length of the output of psa_cipher_finish is effectively tested
because it's the total output length minus the length produced by the
update steps.
diff --git a/tests/suites/test_suite_psa_crypto.function b/tests/suites/test_suite_psa_crypto.function
index 6bb1960..d900f4d 100644
--- a/tests/suites/test_suite_psa_crypto.function
+++ b/tests/suites/test_suite_psa_crypto.function
@@ -2439,12 +2439,16 @@
 void cipher_encrypt_multipart( int alg_arg, int key_type_arg,
                                data_t *key,
                                data_t *input,
-                               int first_part_size,
+                               int first_part_size_arg,
+                               int output1_length_arg, int output2_length_arg,
                                data_t *expected_output )
 {
     psa_key_handle_t handle = 0;
     psa_key_type_t key_type = key_type_arg;
     psa_algorithm_t alg = alg_arg;
+    size_t first_part_size = first_part_size_arg;
+    size_t output1_length = output1_length_arg;
+    size_t output2_length = output2_length_arg;
     unsigned char iv[16] = {0};
     size_t iv_size;
     unsigned char *output = NULL;
@@ -2475,10 +2479,11 @@
                            PSA_BLOCK_CIPHER_BLOCK_SIZE( key_type ) );
     ASSERT_ALLOC( output, output_buffer_size );
 
-    TEST_ASSERT( (unsigned int) first_part_size <= input->len );
+    TEST_ASSERT( first_part_size <= input->len );
     PSA_ASSERT( psa_cipher_update( &operation, input->x, first_part_size,
                                    output, output_buffer_size,
                                    &function_output_length ) );
+    TEST_ASSERT( function_output_length == output1_length );
     total_output_length += function_output_length;
     PSA_ASSERT( psa_cipher_update( &operation,
                                    input->x + first_part_size,
@@ -2486,6 +2491,7 @@
                                    output + total_output_length,
                                    output_buffer_size - total_output_length,
                                    &function_output_length ) );
+    TEST_ASSERT( function_output_length == output2_length );
     total_output_length += function_output_length;
     PSA_ASSERT( psa_cipher_finish( &operation,
                                    output + total_output_length,
@@ -2508,13 +2514,17 @@
 void cipher_decrypt_multipart( int alg_arg, int key_type_arg,
                                data_t *key,
                                data_t *input,
-                               int first_part_size,
+                               int first_part_size_arg,
+                               int output1_length_arg, int output2_length_arg,
                                data_t *expected_output )
 {
     psa_key_handle_t handle = 0;
 
     psa_key_type_t key_type = key_type_arg;
     psa_algorithm_t alg = alg_arg;
+    size_t first_part_size = first_part_size_arg;
+    size_t output1_length = output1_length_arg;
+    size_t output2_length = output2_length_arg;
     unsigned char iv[16] = {0};
     size_t iv_size;
     unsigned char *output = NULL;
@@ -2546,11 +2556,12 @@
                            PSA_BLOCK_CIPHER_BLOCK_SIZE( key_type ) );
     ASSERT_ALLOC( output, output_buffer_size );
 
-    TEST_ASSERT( (unsigned int) first_part_size <= input->len );
+    TEST_ASSERT( first_part_size <= input->len );
     PSA_ASSERT( psa_cipher_update( &operation,
                                    input->x, first_part_size,
                                    output, output_buffer_size,
                                    &function_output_length ) );
+    TEST_ASSERT( function_output_length == output1_length );
     total_output_length += function_output_length;
     PSA_ASSERT( psa_cipher_update( &operation,
                                    input->x + first_part_size,
@@ -2558,6 +2569,7 @@
                                    output + total_output_length,
                                    output_buffer_size - total_output_length,
                                    &function_output_length ) );
+    TEST_ASSERT( function_output_length == output2_length );
     total_output_length += function_output_length;
     PSA_ASSERT( psa_cipher_finish( &operation,
                                    output + total_output_length,
@@ -2732,11 +2744,12 @@
                                      int key_type_arg,
                                      data_t *key,
                                      data_t *input,
-                                     int first_part_size )
+                                     int first_part_size_arg )
 {
     psa_key_handle_t handle = 0;
     psa_key_type_t key_type = key_type_arg;
     psa_algorithm_t alg = alg_arg;
+    size_t first_part_size = first_part_size_arg;
     unsigned char iv[16] = {0};
     size_t iv_size = 16;
     size_t iv_length = 0;
@@ -2772,7 +2785,7 @@
                             PSA_BLOCK_CIPHER_BLOCK_SIZE( key_type ) );
     ASSERT_ALLOC( output1, output1_buffer_size );
 
-    TEST_ASSERT( (unsigned int) first_part_size <= input->len );
+    TEST_ASSERT( first_part_size <= input->len );
 
     PSA_ASSERT( psa_cipher_update( &operation1, input->x, first_part_size,
                                    output1, output1_buffer_size,