Skip to content

Commit

Permalink
tests: allow filtering crypto cipher benchmark tests
Browse files Browse the repository at this point in the history
Add support for specifying a cipher mode and chunk size as argv to
filter which combinations are benchmarked. For example to only
benchmark XTS mode with 512 byte chunks:

  ./tests/benchmark-crypto-cipher xts 512

Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
  • Loading branch information
berrange committed Oct 28, 2019
1 parent 187f355 commit e2186a3
Showing 1 changed file with 12 additions and 1 deletion.
13 changes: 12 additions & 1 deletion tests/benchmark-crypto-cipher.c
Expand Up @@ -161,15 +161,26 @@ static void test_cipher_speed_xts_aes_256(const void *opaque)

int main(int argc, char **argv)
{
char *alg = NULL;
char *size = NULL;
g_test_init(&argc, &argv, NULL);
g_assert(qcrypto_init(NULL) == 0);

#define ADD_TEST(mode, cipher, keysize, chunk) \
g_test_add_data_func( \
if ((!alg || g_str_equal(alg, #mode)) && \
(!size || g_str_equal(size, #chunk))) \
g_test_add_data_func( \
"/crypto/cipher/" #mode "-" #cipher "-" #keysize "/chunk-" #chunk, \
(void *)chunk, \
test_cipher_speed_ ## mode ## _ ## cipher ## _ ## keysize)

if (argc >= 2) {
alg = argv[1];
}
if (argc >= 3) {
size = argv[2];
}

#define ADD_TESTS(chunk) \
do { \
ADD_TEST(ecb, aes, 128, chunk); \
Expand Down

0 comments on commit e2186a3

Please sign in to comment.