-
-#define TEST_DOCSIS_COUNT(func) do { \
- int ret = func; \
- if (ret == TEST_SUCCESS) { \
- printf("\t%2d)", n++); \
- printf("+++++ PASSED:" #func"\n"); \
- p++; \
- } else if (ret == TEST_SKIPPED) { \
- printf("\t%2d)", n++); \
- printf("~~~~~ SKIPPED:" #func"\n"); \
- s++; \
- } else { \
- printf("\t%2d)", n++); \
- printf("----- FAILED:" #func"\n"); \
- f++; \
- } \
-} while (0)
-
-static int
-test_DOCSIS_PROTO_uplink_all(void)
-{
- int p = 0, s = 0, f = 0, n = 0;
-
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(1, &docsis_test_case_1));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(2, &docsis_test_case_2));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(3, &docsis_test_case_3));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(4, &docsis_test_case_4));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(5, &docsis_test_case_5));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(6, &docsis_test_case_6));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(7, &docsis_test_case_7));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(8, &docsis_test_case_8));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(9, &docsis_test_case_9));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(10, &docsis_test_case_10));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(11, &docsis_test_case_11));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(12, &docsis_test_case_12));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(13, &docsis_test_case_13));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(14, &docsis_test_case_14));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(15, &docsis_test_case_15));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(16, &docsis_test_case_16));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(17, &docsis_test_case_17));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(18, &docsis_test_case_18));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(19, &docsis_test_case_19));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(20, &docsis_test_case_20));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(21, &docsis_test_case_21));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(22, &docsis_test_case_22));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(23, &docsis_test_case_23));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(24, &docsis_test_case_24));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(25, &docsis_test_case_25));
- TEST_DOCSIS_COUNT(test_docsis_proto_uplink(26, &docsis_test_case_26));
-
- if (f)
- printf("## %s: %d passed out of %d (%d skipped)\n",
- __func__, p, n, s);
-
- return f;
-};
-
-static int
-test_DOCSIS_PROTO_downlink_all(void)
-{
- int p = 0, s = 0, f = 0, n = 0;
-
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(1, &docsis_test_case_1));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(2, &docsis_test_case_2));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(3, &docsis_test_case_3));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(4, &docsis_test_case_4));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(5, &docsis_test_case_5));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(6, &docsis_test_case_6));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(7, &docsis_test_case_7));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(8, &docsis_test_case_8));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(9, &docsis_test_case_9));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(10, &docsis_test_case_10));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(11, &docsis_test_case_11));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(12, &docsis_test_case_12));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(13, &docsis_test_case_13));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(14, &docsis_test_case_14));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(15, &docsis_test_case_15));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(16, &docsis_test_case_16));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(17, &docsis_test_case_17));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(18, &docsis_test_case_18));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(19, &docsis_test_case_19));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(20, &docsis_test_case_20));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(21, &docsis_test_case_21));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(22, &docsis_test_case_22));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(23, &docsis_test_case_23));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(24, &docsis_test_case_24));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(25, &docsis_test_case_25));
- TEST_DOCSIS_COUNT(test_docsis_proto_downlink(26, &docsis_test_case_26));
-
- if (f)
- printf("## %s: %d passed out of %d (%d skipped)\n",
- __func__, p, n, s);
-
- return f;
-};
-
-static int
-test_DOCSIS_PROTO_all(void)
-{
- struct crypto_testsuite_params *ts_params = &testsuite_params;
- struct crypto_unittest_params *ut_params = &unittest_params;
- struct rte_cryptodev_info dev_info;
- int status;
-
- rte_cryptodev_info_get(ts_params->valid_devs[0], &dev_info);
- uint64_t feat_flags = dev_info.feature_flags;
-
- if (!(feat_flags & RTE_CRYPTODEV_FF_SECURITY))
- return TEST_SKIPPED;
-
- /* Set action type */
- ut_params->type = gbl_action_type == RTE_SECURITY_ACTION_TYPE_NONE ?
- RTE_SECURITY_ACTION_TYPE_LOOKASIDE_PROTOCOL :
- gbl_action_type;
-
- if (security_proto_supported(ut_params->type,
- RTE_SECURITY_PROTOCOL_DOCSIS) < 0)
- return TEST_SKIPPED;
-
- status = test_DOCSIS_PROTO_uplink_all();
- status += test_DOCSIS_PROTO_downlink_all();
-
- if (status)
- return TEST_FAILED;
- else
- return TEST_SUCCESS;
-}