summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2017-09-13 20:21:52 +0000
committerGerrit Code Review <review@openstack.org>2017-09-13 20:21:52 +0000
commit0dd6e1e41a6c972f2f40e91e7d4389699608fa09 (patch)
tree29e2b11be2715c9fb5d678cf717b4888a525b8a9
parentdd1a91968fba16990753a3f3f8f8aef83c7949fc (diff)
parentf4a16fe92977cdea9cb7e61fa65804e9f3bc62dc (diff)
downloadliberasurecode-0dd6e1e41a6c972f2f40e91e7d4389699608fa09.tar.gz
Merge "Use preprocessor to build test suites"
-rw-r--r--test/liberasurecode_test.c692
1 files changed, 55 insertions, 637 deletions
diff --git a/test/liberasurecode_test.c b/test/liberasurecode_test.c
index 2c103b3..f009a2d 100644
--- a/test/liberasurecode_test.c
+++ b/test/liberasurecode_test.c
@@ -1547,7 +1547,7 @@ static void test_simple_encode_decode(const ec_backend_id_t be_id,
free(skip);
}
-static void test_simple_encode_decode_over32()
+static void test_jerasure_rs_vand_simple_encode_decode_over32()
{
struct ec_args over32_args = {
.k = 30,
@@ -1774,652 +1774,70 @@ static void test_metadata_crcs()
//static void test_verify_str
+/* An individual test, useful to ensure the reported name
+ reflects the function name */
+#define TEST(test, backend, checksum) {#test, test, backend, checksum, .skip = false}
+/* Block of common tests for the "real" backends */
+#define TEST_SUITE(backend) \
+ TEST(test_create_and_destroy_backend, backend, CHKSUM_NONE), \
+ TEST(test_simple_encode_decode, backend, CHKSUM_NONE), \
+ TEST(test_decode_with_missing_data, backend, CHKSUM_NONE), \
+ TEST(test_decode_with_missing_parity, backend, CHKSUM_NONE), \
+ TEST(test_decode_with_missing_multi_data, backend, CHKSUM_NONE), \
+ TEST(test_decode_with_missing_multi_parity, backend, CHKSUM_NONE), \
+ TEST(test_decode_with_missing_multi_data_parity, backend, CHKSUM_NONE), \
+ TEST(test_simple_reconstruct, backend, CHKSUM_NONE), \
+ TEST(test_fragments_needed, backend, CHKSUM_NONE), \
+ TEST(test_get_fragment_metadata, backend, CHKSUM_NONE), \
+ TEST(test_get_fragment_metadata, backend, CHKSUM_CRC32), \
+ TEST(test_verify_stripe_metadata, backend, CHKSUM_CRC32), \
+ TEST(test_verify_stripe_metadata_libec_mismatch, backend, CHKSUM_CRC32), \
+ TEST(test_verify_stripe_metadata_magic_mismatch, backend, CHKSUM_CRC32), \
+ TEST(test_verify_stripe_metadata_be_id_mismatch, backend, CHKSUM_CRC32), \
+ TEST(test_verify_stripe_metadata_be_ver_mismatch, backend, CHKSUM_CRC32), \
+ TEST(test_verify_stripe_metadata_frag_idx_invalid, backend, CHKSUM_CRC32)
+
struct testcase testcases[] = {
- {"test_backend_available_invalid_args",
- test_backend_available_invalid_args,
- EC_BACKENDS_MAX, 0,
- .skip = false},
- {"test_backend_available",
- test_backend_available,
- EC_BACKEND_NULL, 0,
- .skip = false},
- {"test_create_backend_invalid_args",
- test_create_backend_invalid_args,
- EC_BACKENDS_MAX, CHKSUM_TYPES_MAX,
- .skip = false},
- {"test_destroy_backend_invalid_args",
- test_destroy_backend_invalid_args,
- EC_BACKENDS_MAX, CHKSUM_TYPES_MAX,
- .skip = false},
- {"test_encode_invalid_args",
- test_encode_invalid_args,
- EC_BACKENDS_MAX, CHKSUM_TYPES_MAX,
- .skip = false},
- {"test_encode_cleanup_invalid_args",
- test_encode_cleanup_invalid_args,
- EC_BACKENDS_MAX, CHKSUM_TYPES_MAX,
- .skip = false},
- {"test_decode_invalid_args",
- test_decode_invalid_args,
- EC_BACKENDS_MAX, CHKSUM_TYPES_MAX,
- .skip = false},
- {"test_decode_cleanup_invalid_args",
- test_decode_cleanup_invalid_args,
- EC_BACKENDS_MAX, CHKSUM_TYPES_MAX,
- .skip = false},
- {"test_reconstruct_fragment_invalid_args",
- test_reconstruct_fragment_invalid_args,
- EC_BACKENDS_MAX, CHKSUM_TYPES_MAX,
- .skip = false},
- {"test_get_fragment_metadata_invalid_args",
- test_get_fragment_metadata_invalid_args,
- EC_BACKENDS_MAX, CHKSUM_TYPES_MAX,
- .skip = false},
- {"test_verify_stripe_metadata_invalid_args",
- test_verify_stripe_metadata_invalid_args,
- EC_BACKENDS_MAX, CHKSUM_TYPES_MAX,
- .skip = false},
- {"test_fragments_needed_invalid_args",
- test_fragments_needed_invalid_args,
- EC_BACKENDS_MAX, CHKSUM_TYPES_MAX,
- .skip = false},
- {"test_get_fragment_partition",
- test_get_fragment_partition,
- EC_BACKENDS_MAX, CHKSUM_TYPES_MAX,
- .skip = false},
- {"test_liberasurecode_get_version",
- test_liberasurecode_get_version,
- EC_BACKENDS_MAX, CHKSUM_TYPES_MAX,
- .skip = false},
- {"test_metadata_crcs",
- test_metadata_crcs,
- EC_BACKENDS_MAX, 0,
- .skip = false},
+ TEST(test_backend_available_invalid_args, EC_BACKENDS_MAX, 0),
+ TEST(test_backend_available, EC_BACKEND_NULL, 0),
+ TEST(test_create_backend_invalid_args, EC_BACKENDS_MAX, CHKSUM_TYPES_MAX),
+ TEST(test_destroy_backend_invalid_args, EC_BACKENDS_MAX, CHKSUM_TYPES_MAX),
+ TEST(test_encode_invalid_args, EC_BACKENDS_MAX, CHKSUM_TYPES_MAX),
+ TEST(test_encode_cleanup_invalid_args, EC_BACKENDS_MAX, CHKSUM_TYPES_MAX),
+ TEST(test_decode_invalid_args, EC_BACKENDS_MAX, CHKSUM_TYPES_MAX),
+ TEST(test_decode_cleanup_invalid_args, EC_BACKENDS_MAX, CHKSUM_TYPES_MAX),
+ TEST(test_reconstruct_fragment_invalid_args, EC_BACKENDS_MAX, CHKSUM_TYPES_MAX),
+ TEST(test_get_fragment_metadata_invalid_args, EC_BACKENDS_MAX, CHKSUM_TYPES_MAX),
+ TEST(test_verify_stripe_metadata_invalid_args, EC_BACKENDS_MAX, CHKSUM_TYPES_MAX),
+ TEST(test_fragments_needed_invalid_args, EC_BACKENDS_MAX, CHKSUM_TYPES_MAX),
+ TEST(test_get_fragment_partition, EC_BACKENDS_MAX, CHKSUM_TYPES_MAX),
+ TEST(test_liberasurecode_get_version, EC_BACKENDS_MAX, CHKSUM_TYPES_MAX),
+ TEST(test_metadata_crcs, EC_BACKENDS_MAX, 0),
// NULL backend test
- {"test_create_and_destroy_backend",
- test_create_and_destroy_backend,
- EC_BACKEND_NULL, CHKSUM_NONE,
- .skip = false},
- {"test_simple_encode_null",
- test_simple_encode_decode,
- EC_BACKEND_NULL, CHKSUM_NONE,
- .skip = false},
- {"test_get_fragment_metadata",
- test_get_fragment_metadata,
- EC_BACKEND_NULL, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_parity",
- test_decode_with_missing_parity,
- EC_BACKEND_NULL, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_multi_parity",
- test_decode_with_missing_multi_parity,
- EC_BACKEND_NULL, CHKSUM_NONE,
- .skip = false},
+ TEST(test_create_and_destroy_backend, EC_BACKEND_NULL, CHKSUM_NONE),
+ TEST(test_simple_encode_decode, EC_BACKEND_NULL, CHKSUM_NONE),
+ TEST(test_get_fragment_metadata, EC_BACKEND_NULL, CHKSUM_NONE),
+ TEST(test_decode_with_missing_parity, EC_BACKEND_NULL, CHKSUM_NONE),
+ TEST(test_decode_with_missing_multi_parity, EC_BACKEND_NULL, CHKSUM_NONE),
// Flat XOR backend tests
- {"test_create_and_destroy_backend",
- test_create_and_destroy_backend,
- EC_BACKEND_FLAT_XOR_HD, CHKSUM_NONE,
- .skip = false},
- {"test_simple_encode_decode",
- test_simple_encode_decode,
- EC_BACKEND_FLAT_XOR_HD, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_data",
- test_decode_with_missing_data,
- EC_BACKEND_FLAT_XOR_HD, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_parity",
- test_decode_with_missing_parity,
- EC_BACKEND_FLAT_XOR_HD, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_multi_data",
- test_decode_with_missing_multi_data,
- EC_BACKEND_FLAT_XOR_HD, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_multi_parity",
- test_decode_with_missing_multi_parity,
- EC_BACKEND_FLAT_XOR_HD, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_multi_data_parity",
- test_decode_with_missing_multi_data_parity,
- EC_BACKEND_FLAT_XOR_HD, CHKSUM_NONE,
- .skip = false},
- {"test_simple_reconstruct",
- test_simple_reconstruct,
- EC_BACKEND_FLAT_XOR_HD, CHKSUM_NONE,
- .skip = false},
- {"test_fragments_needed",
- test_fragments_needed,
- EC_BACKEND_FLAT_XOR_HD, CHKSUM_NONE,
- .skip = false},
- {"test_get_fragment_metadata",
- test_get_fragment_metadata,
- EC_BACKEND_FLAT_XOR_HD, CHKSUM_NONE,
- .skip = false},
- {"test_get_fragment_metadata_crc32",
- test_get_fragment_metadata,
- EC_BACKEND_FLAT_XOR_HD, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata",
- test_verify_stripe_metadata,
- EC_BACKEND_FLAT_XOR_HD, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_libec_mismatch",
- test_verify_stripe_metadata_libec_mismatch,
- EC_BACKEND_FLAT_XOR_HD, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_magic_mismatch",
- test_verify_stripe_metadata_magic_mismatch,
- EC_BACKEND_FLAT_XOR_HD, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_be_id_mismatch",
- test_verify_stripe_metadata_be_id_mismatch,
- EC_BACKEND_FLAT_XOR_HD, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_be_ver_mismatch",
- test_verify_stripe_metadata_be_ver_mismatch,
- EC_BACKEND_FLAT_XOR_HD, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_frag_idx_invalid",
- test_verify_stripe_metadata_frag_idx_invalid,
- EC_BACKEND_FLAT_XOR_HD, CHKSUM_CRC32,
- .skip = false},
+ TEST_SUITE(EC_BACKEND_FLAT_XOR_HD),
// Jerasure RS Vand backend tests
- {"test_create_and_destroy_backend",
- test_create_and_destroy_backend,
- EC_BACKEND_JERASURE_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_simple_encode_decode",
- test_simple_encode_decode,
- EC_BACKEND_JERASURE_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_data",
- test_decode_with_missing_data,
- EC_BACKEND_JERASURE_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_parity",
- test_decode_with_missing_parity,
- EC_BACKEND_JERASURE_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_multi_data",
- test_decode_with_missing_multi_data,
- EC_BACKEND_JERASURE_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_multi_parity",
- test_decode_with_missing_multi_parity,
- EC_BACKEND_JERASURE_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_multi_data_parity",
- test_decode_with_missing_multi_data_parity,
- EC_BACKEND_JERASURE_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_simple_reconstruct",
- test_simple_reconstruct,
- EC_BACKEND_JERASURE_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_fragments_needed",
- test_fragments_needed,
- EC_BACKEND_JERASURE_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_get_fragment_metadata",
- test_get_fragment_metadata,
- EC_BACKEND_JERASURE_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_get_fragment_metadata_crc32",
- test_get_fragment_metadata,
- EC_BACKEND_JERASURE_RS_VAND, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata",
- test_verify_stripe_metadata,
- EC_BACKEND_JERASURE_RS_VAND, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_libec_mismatch",
- test_verify_stripe_metadata_libec_mismatch,
- EC_BACKEND_JERASURE_RS_VAND, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_magic_mismatch",
- test_verify_stripe_metadata_magic_mismatch,
- EC_BACKEND_JERASURE_RS_VAND, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_be_id_mismatch",
- test_verify_stripe_metadata_be_id_mismatch,
- EC_BACKEND_JERASURE_RS_VAND, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_be_ver_mismatch",
- test_verify_stripe_metadata_be_ver_mismatch,
- EC_BACKEND_JERASURE_RS_VAND, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_frag_idx_invalid",
- test_verify_stripe_metadata_frag_idx_invalid,
- EC_BACKEND_JERASURE_RS_VAND, CHKSUM_CRC32,
- .skip = false},
- {"test_simple_encode_decode_over32_jerasure_rs_vand",
- test_simple_encode_decode_over32,
- EC_BACKENDS_MAX, 0, // NB: this is hardcoded to use jerasure RS vand
- .skip = false},
+ TEST_SUITE(EC_BACKEND_JERASURE_RS_VAND),
+ TEST(test_jerasure_rs_vand_simple_encode_decode_over32, EC_BACKENDS_MAX, 0),
// Jerasure RS Cauchy backend tests
- {"test_create_and_destroy_backend",
- test_create_and_destroy_backend,
- EC_BACKEND_JERASURE_RS_CAUCHY, CHKSUM_NONE,
- .skip = false},
- {"test_simple_encode_decode",
- test_simple_encode_decode,
- EC_BACKEND_JERASURE_RS_CAUCHY, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_data",
- test_decode_with_missing_data,
- EC_BACKEND_JERASURE_RS_CAUCHY, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_parity",
- test_decode_with_missing_parity,
- EC_BACKEND_JERASURE_RS_CAUCHY, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_multi_data",
- test_decode_with_missing_multi_data,
- EC_BACKEND_JERASURE_RS_CAUCHY, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_multi_parity",
- test_decode_with_missing_multi_parity,
- EC_BACKEND_JERASURE_RS_CAUCHY, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_multi_data_parity",
- test_decode_with_missing_multi_data_parity,
- EC_BACKEND_JERASURE_RS_CAUCHY, CHKSUM_NONE,
- .skip = false},
- {"test_simple_reconstruct",
- test_simple_reconstruct,
- EC_BACKEND_JERASURE_RS_CAUCHY, CHKSUM_NONE,
- .skip = false},
- {"test_fragments_needed",
- test_fragments_needed,
- EC_BACKEND_JERASURE_RS_CAUCHY, CHKSUM_NONE,
- .skip = false},
- {"test_get_fragment_metadata",
- test_get_fragment_metadata,
- EC_BACKEND_JERASURE_RS_CAUCHY, CHKSUM_NONE,
- .skip = false},
- {"test_get_fragment_metadata_crc32",
- test_get_fragment_metadata,
- EC_BACKEND_JERASURE_RS_CAUCHY, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata",
- test_verify_stripe_metadata,
- EC_BACKEND_JERASURE_RS_CAUCHY, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_libec_mismatch",
- test_verify_stripe_metadata_libec_mismatch,
- EC_BACKEND_JERASURE_RS_CAUCHY, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_magic_mismatch",
- test_verify_stripe_metadata_magic_mismatch,
- EC_BACKEND_JERASURE_RS_CAUCHY, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_be_id_mismatch",
- test_verify_stripe_metadata_be_id_mismatch,
- EC_BACKEND_JERASURE_RS_CAUCHY, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_be_ver_mismatch",
- test_verify_stripe_metadata_be_ver_mismatch,
- EC_BACKEND_JERASURE_RS_CAUCHY, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_frag_idx_invalid",
- test_verify_stripe_metadata_frag_idx_invalid,
- EC_BACKEND_JERASURE_RS_CAUCHY, CHKSUM_CRC32,
- .skip = false},
- {"test_jerasure_rs_cauchy_init_failure",
- test_jerasure_rs_cauchy_init_failure,
- EC_BACKENDS_MAX, 0,
- .skip = false},
+ TEST_SUITE(EC_BACKEND_JERASURE_RS_CAUCHY),
+ TEST(test_jerasure_rs_cauchy_init_failure, EC_BACKENDS_MAX, 0),
// ISA-L rs_vand tests
- {"test_create_and_destroy_backend",
- test_create_and_destroy_backend,
- EC_BACKEND_ISA_L_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_simple_encode_decode",
- test_simple_encode_decode,
- EC_BACKEND_ISA_L_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_data",
- test_decode_with_missing_data,
- EC_BACKEND_ISA_L_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_parity",
- test_decode_with_missing_parity,
- EC_BACKEND_ISA_L_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_multi_data",
- test_decode_with_missing_multi_data,
- EC_BACKEND_ISA_L_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_multi_parity",
- test_decode_with_missing_multi_parity,
- EC_BACKEND_ISA_L_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_multi_data_parity",
- test_decode_with_missing_multi_data_parity,
- EC_BACKEND_ISA_L_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_simple_reconstruct",
- test_simple_reconstruct,
- EC_BACKEND_ISA_L_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_fragments_needed",
- test_fragments_needed,
- EC_BACKEND_ISA_L_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_get_fragment_metadata",
- test_get_fragment_metadata,
- EC_BACKEND_ISA_L_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_get_fragment_metadata_crc32",
- test_get_fragment_metadata,
- EC_BACKEND_ISA_L_RS_VAND, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata",
- test_verify_stripe_metadata,
- EC_BACKEND_ISA_L_RS_VAND, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_libec_mismatch",
- test_verify_stripe_metadata_libec_mismatch,
- EC_BACKEND_ISA_L_RS_VAND, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_magic_mismatch",
- test_verify_stripe_metadata_magic_mismatch,
- EC_BACKEND_ISA_L_RS_VAND, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_be_id_mismatch",
- test_verify_stripe_metadata_be_id_mismatch,
- EC_BACKEND_ISA_L_RS_VAND, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_be_ver_mismatch",
- test_verify_stripe_metadata_be_ver_mismatch,
- EC_BACKEND_ISA_L_RS_VAND, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_frag_idx_invalid",
- test_verify_stripe_metadata_frag_idx_invalid,
- EC_BACKEND_ISA_L_RS_VAND, CHKSUM_CRC32,
- .skip = false},
- {"test_isa_l_rs_vand_decode_reconstruct_specific_error_case",
- test_isa_l_rs_vand_decode_reconstruct_specific_error_case,
- EC_BACKENDS_MAX, 0, // note this test is using ISA-L in hard coded
- .skip = false},
+ TEST_SUITE(EC_BACKEND_ISA_L_RS_VAND),
+ TEST(test_isa_l_rs_vand_decode_reconstruct_specific_error_case, EC_BACKENDS_MAX, 0),
// ISA-L rs cauchy tests
- {"test_create_and_destroy_backend",
- test_create_and_destroy_backend,
- EC_BACKEND_ISA_L_RS_CAUCHY, CHKSUM_NONE,
- .skip = false},
- {"test_simple_encode_decode",
- test_simple_encode_decode,
- EC_BACKEND_ISA_L_RS_CAUCHY, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_data",
- test_decode_with_missing_data,
- EC_BACKEND_ISA_L_RS_CAUCHY, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_parity",
- test_decode_with_missing_parity,
- EC_BACKEND_ISA_L_RS_CAUCHY, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_multi_data",
- test_decode_with_missing_multi_data,
- EC_BACKEND_ISA_L_RS_CAUCHY, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_multi_parity",
- test_decode_with_missing_multi_parity,
- EC_BACKEND_ISA_L_RS_CAUCHY, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_multi_data_parity",
- test_decode_with_missing_multi_data_parity,
- EC_BACKEND_ISA_L_RS_CAUCHY, CHKSUM_NONE,
- .skip = false},
- {"test_simple_reconstruct",
- test_simple_reconstruct,
- EC_BACKEND_ISA_L_RS_CAUCHY, CHKSUM_NONE,
- .skip = false},
- {"test_fragments_needed",
- test_fragments_needed,
- EC_BACKEND_ISA_L_RS_CAUCHY, CHKSUM_NONE,
- .skip = false},
- {"test_get_fragment_metadata",
- test_get_fragment_metadata,
- EC_BACKEND_ISA_L_RS_CAUCHY, CHKSUM_NONE,
- .skip = false},
- {"test_get_fragment_metadata_crc32",
- test_get_fragment_metadata,
- EC_BACKEND_ISA_L_RS_CAUCHY, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata",
- test_verify_stripe_metadata,
- EC_BACKEND_ISA_L_RS_CAUCHY, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_libec_mismatch",
- test_verify_stripe_metadata_libec_mismatch,
- EC_BACKEND_ISA_L_RS_CAUCHY, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_magic_mismatch",
- test_verify_stripe_metadata_magic_mismatch,
- EC_BACKEND_ISA_L_RS_CAUCHY, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_be_id_mismatch",
- test_verify_stripe_metadata_be_id_mismatch,
- EC_BACKEND_ISA_L_RS_CAUCHY, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_be_ver_mismatch",
- test_verify_stripe_metadata_be_ver_mismatch,
- EC_BACKEND_ISA_L_RS_CAUCHY, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_frag_idx_invalid",
- test_verify_stripe_metadata_frag_idx_invalid,
- EC_BACKEND_ISA_L_RS_CAUCHY, CHKSUM_CRC32,
- .skip = false},
+ TEST_SUITE(EC_BACKEND_ISA_L_RS_CAUCHY),
// shss tests
- {"test_create_and_destroy_backend",
- test_create_and_destroy_backend,
- EC_BACKEND_SHSS, CHKSUM_NONE,
- .skip = false},
- {"test_simple_encode_decode",
- test_simple_encode_decode,
- EC_BACKEND_SHSS, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_data",
- test_decode_with_missing_data,
- EC_BACKEND_SHSS, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_parity",
- test_decode_with_missing_parity,
- EC_BACKEND_SHSS, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_multi_data",
- test_decode_with_missing_multi_data,
- EC_BACKEND_SHSS, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_multi_parity",
- test_decode_with_missing_multi_parity,
- EC_BACKEND_SHSS, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_multi_data_parity",
- test_decode_with_missing_multi_data_parity,
- EC_BACKEND_SHSS, CHKSUM_NONE,
- .skip = false},
- {"test_simple_reconstruct",
- test_simple_reconstruct,
- EC_BACKEND_SHSS, CHKSUM_NONE,
- .skip = false},
- {"test_fragments_needed",
- test_fragments_needed,
- EC_BACKEND_SHSS, CHKSUM_NONE,
- .skip = false},
- {"test_get_fragment_metadata",
- test_get_fragment_metadata,
- EC_BACKEND_SHSS, CHKSUM_NONE,
- .skip = false},
- {"test_get_fragment_metadata_crc32",
- test_get_fragment_metadata,
- EC_BACKEND_SHSS, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata",
- test_verify_stripe_metadata,
- EC_BACKEND_SHSS, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_libec_mismatch",
- test_verify_stripe_metadata_libec_mismatch,
- EC_BACKEND_SHSS, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_magic_mismatch",
- test_verify_stripe_metadata_magic_mismatch,
- EC_BACKEND_SHSS, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_be_id_mismatch",
- test_verify_stripe_metadata_be_id_mismatch,
- EC_BACKEND_SHSS, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_be_ver_mismatch",
- test_verify_stripe_metadata_be_ver_mismatch,
- EC_BACKEND_SHSS, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_frag_idx_invalid",
- test_verify_stripe_metadata_frag_idx_invalid,
- EC_BACKEND_SHSS, CHKSUM_CRC32,
- .skip = false},
+ TEST_SUITE(EC_BACKEND_SHSS),
// Internal RS Vand backend tests
- {"test_create_and_destroy_backend",
- test_create_and_destroy_backend,
- EC_BACKEND_LIBERASURECODE_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_simple_encode_decode",
- test_simple_encode_decode,
- EC_BACKEND_LIBERASURECODE_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_data",
- test_decode_with_missing_data,
- EC_BACKEND_LIBERASURECODE_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_parity",
- test_decode_with_missing_parity,
- EC_BACKEND_LIBERASURECODE_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_multi_data",
- test_decode_with_missing_multi_data,
- EC_BACKEND_LIBERASURECODE_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_multi_parity",
- test_decode_with_missing_multi_parity,
- EC_BACKEND_LIBERASURECODE_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_multi_data_parity",
- test_decode_with_missing_multi_data_parity,
- EC_BACKEND_LIBERASURECODE_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_simple_reconstruct",
- test_simple_reconstruct,
- EC_BACKEND_LIBERASURECODE_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_fragments_needed",
- test_fragments_needed,
- EC_BACKEND_LIBERASURECODE_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_get_fragment_metadata",
- test_get_fragment_metadata,
- EC_BACKEND_LIBERASURECODE_RS_VAND, CHKSUM_NONE,
- .skip = false},
- {"test_get_fragment_metadata_crc32",
- test_get_fragment_metadata,
- EC_BACKEND_LIBERASURECODE_RS_VAND, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata",
- test_verify_stripe_metadata,
- EC_BACKEND_LIBERASURECODE_RS_VAND, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_libec_mismatch",
- test_verify_stripe_metadata_libec_mismatch,
- EC_BACKEND_LIBERASURECODE_RS_VAND, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_magic_mismatch",
- test_verify_stripe_metadata_magic_mismatch,
- EC_BACKEND_LIBERASURECODE_RS_VAND, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_be_id_mismatch",
- test_verify_stripe_metadata_be_id_mismatch,
- EC_BACKEND_LIBERASURECODE_RS_VAND, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_be_ver_mismatch",
- test_verify_stripe_metadata_be_ver_mismatch,
- EC_BACKEND_LIBERASURECODE_RS_VAND, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_frag_idx_invalid",
- test_verify_stripe_metadata_frag_idx_invalid,
- EC_BACKEND_LIBERASURECODE_RS_VAND, CHKSUM_CRC32,
- .skip = false},
+ TEST_SUITE(EC_BACKEND_LIBERASURECODE_RS_VAND),
// libphazr backend tests
- {"create_and_destroy_backend",
- test_create_and_destroy_backend,
- EC_BACKEND_LIBPHAZR, CHKSUM_NONE,
- .skip = false},
- {"simple_encode_libphazr",
- test_simple_encode_decode,
- EC_BACKEND_LIBPHAZR, CHKSUM_NONE,
- .skip = false},
- {"decode_with_missing_data_libphazr",
- test_decode_with_missing_data,
- EC_BACKEND_LIBPHAZR, CHKSUM_NONE,
- .skip = false},
- {"decode_with_missing_parity_libphazr",
- test_decode_with_missing_parity,
- EC_BACKEND_LIBPHAZR, CHKSUM_NONE,
- .skip = false},
- {"decode_with_missing_multi_data_libphazr",
- test_decode_with_missing_multi_data,
- EC_BACKEND_LIBPHAZR, CHKSUM_NONE,
- .skip = false},
- {"decode_with_missing_multi_parity_libphazr",
- test_decode_with_missing_multi_parity,
- EC_BACKEND_LIBPHAZR, CHKSUM_NONE,
- .skip = false},
- {"test_decode_with_missing_multi_data_parity_libphazr",
- test_decode_with_missing_multi_data_parity,
- EC_BACKEND_LIBPHAZR, CHKSUM_NONE,
- .skip = false},
- {"simple_reconstruct_libphazr",
- test_simple_reconstruct,
- EC_BACKEND_LIBPHAZR, CHKSUM_NONE,
- .skip = false},
- {"test_fragments_needed_libphazr",
- test_fragments_needed,
- EC_BACKEND_LIBPHAZR, CHKSUM_NONE,
- .skip = false},
- {"test_get_fragment_metadata_libphazr",
- test_get_fragment_metadata,
- EC_BACKEND_LIBPHAZR, CHKSUM_NONE,
- .skip = false},
- {"test_get_fragment_metadata_libphazr_crc32",
- test_get_fragment_metadata,
- EC_BACKEND_LIBPHAZR, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata",
- test_verify_stripe_metadata,
- EC_BACKEND_LIBPHAZR, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_libec_mismatch",
- test_verify_stripe_metadata_libec_mismatch,
- EC_BACKEND_LIBPHAZR, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_magic_mismatch",
- test_verify_stripe_metadata_magic_mismatch,
- EC_BACKEND_LIBPHAZR, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_be_id_mismatch",
- test_verify_stripe_metadata_be_id_mismatch,
- EC_BACKEND_LIBPHAZR, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_be_ver_mismatch",
- test_verify_stripe_metadata_be_ver_mismatch,
- EC_BACKEND_LIBPHAZR, CHKSUM_CRC32,
- .skip = false},
- {"test_verify_stripe_metadata_frag_idx_invalid",
- test_verify_stripe_metadata_frag_idx_invalid,
- EC_BACKEND_LIBPHAZR, CHKSUM_CRC32,
- .skip = false},
+ TEST_SUITE(EC_BACKEND_LIBPHAZR),
{ NULL, NULL, 0, 0, false },
};