| 1003 | } |
| 1004 | |
| 1005 | static int |
| 1006 | test_crosscheck(void) |
| 1007 | { |
| 1008 | struct unit_test_suite **test_suites = NULL; |
| 1009 | int ret, i; |
| 1010 | |
| 1011 | static struct unit_test_suite ts = { |
| 1012 | .suite_name = "Crosscheck Unit Test Suite", |
| 1013 | .setup = crosscheck_suite_setup, |
| 1014 | .teardown = crosscheck_suite_teardown, |
| 1015 | .unit_test_cases = {TEST_CASES_END()} |
| 1016 | }; |
| 1017 | |
| 1018 | ret = crosscheck_init(); |
| 1019 | if (ret) |
| 1020 | goto exit; |
| 1021 | |
| 1022 | if (nb_common_sym_caps == 0) { |
| 1023 | RTE_LOG(WARNING, USER1, "Cryptodevs don't have common capabilities\n"); |
| 1024 | ret = TEST_SKIPPED; |
| 1025 | goto exit; |
| 1026 | } |
| 1027 | |
| 1028 | /* + 1 for NULL-end suite */ |
| 1029 | test_suites = rte_calloc(NULL, nb_common_sym_caps + 1, sizeof(struct unit_test_suite *), 0); |
| 1030 | TEST_ASSERT_NOT_NULL(test_suites, "test_suites allocation failed"); |
| 1031 | |
| 1032 | /* Create test suite for each supported algorithm */ |
| 1033 | ts.unit_test_suites = test_suites; |
| 1034 | for (i = 0; i < nb_common_sym_caps; i++) |
| 1035 | ts.unit_test_suites[i] = sym_unit_test_suite_create(&common_symm_capas[i]); |
| 1036 | |
| 1037 | ret = unit_test_suite_runner(&ts); |
| 1038 | |
| 1039 | for (i = 0; i < nb_common_sym_caps; i++) |
| 1040 | rte_free(ts.unit_test_suites[i]); |
| 1041 | |
| 1042 | rte_free(test_suites); |
| 1043 | |
| 1044 | exit: |
| 1045 | crosscheck_fini(); |
| 1046 | |
| 1047 | return ret; |
| 1048 | } |
| 1049 | |
| 1050 | REGISTER_TEST_COMMAND(cryptodev_crosscheck, test_crosscheck); |
nothing calls this directly
no test coverage detected