Signed-off-by: Bill Fischofer <bill.fischo...@linaro.org>
---
 test/validation/.gitignore        |  1 +
 test/validation/Makefile.am       |  2 +
 test/validation/odp_strongtypes.c | 86 +++++++++++++++++++++++++++++++++++++++
 3 files changed, 89 insertions(+)
 create mode 100644 test/validation/odp_strongtypes.c

diff --git a/test/validation/.gitignore b/test/validation/.gitignore
index 2eab34c..1f7f37e 100644
--- a/test/validation/.gitignore
+++ b/test/validation/.gitignore
@@ -14,6 +14,7 @@ odp_queue
 odp_random
 odp_schedule
 odp_shm
+odp_strongtypes
 odp_synchronizers
 odp_system
 odp_time
diff --git a/test/validation/Makefile.am b/test/validation/Makefile.am
index 0833181..4d04349 100644
--- a/test/validation/Makefile.am
+++ b/test/validation/Makefile.am
@@ -17,6 +17,7 @@ EXECUTABLES = odp_buffer \
              odp_random \
              odp_schedule \
              odp_shm \
+             odp_strongtypes \
              odp_system \
              odp_synchronizers \
              odp_time \
@@ -52,6 +53,7 @@ dist_odp_queue_SOURCES        = odp_queue.c $(ODP_CU_COMMON)
 dist_odp_random_SOURCES = odp_random.c $(ODP_CU_COMMON)
 dist_odp_schedule_SOURCES = odp_schedule.c $(ODP_CU_COMMON)
 dist_odp_shm_SOURCES   = odp_shm.c $(ODP_CU_COMMON)
+dist_odp_strongtypes_SOURCES = odp_strongtypes.c $(ODP_CU_COMMON)
 dist_odp_system_SOURCES = odp_system.c $(ODP_CU_COMMON)
 dist_odp_synchronizers_SOURCES = odp_synchronizers.c $(ODP_CU_COMMON)
 dist_odp_time_SOURCES   = odp_time.c $(ODP_CU_COMMON)
diff --git a/test/validation/odp_strongtypes.c 
b/test/validation/odp_strongtypes.c
new file mode 100644
index 0000000..29407b5
--- /dev/null
+++ b/test/validation/odp_strongtypes.c
@@ -0,0 +1,86 @@
+/* Copyright (c) 2015, Linaro Limited
+ * All rights reserved.
+ *
+ * SPDX-License-Identifier:     BSD-3-Clause
+ */
+
+#include <odp.h>
+#include <CUnit/Basic.h>
+
+static void test_odp_strong_types(void)
+{
+       odp_buffer_t buf = ODP_BUFFER_INVALID;
+       odp_cos_t cos = ODP_COS_INVALID;
+       odp_pmr_t pmr = ODP_PMR_INVAL;
+       odp_pmr_set_t pmrset = ODP_PMR_SET_INVAL;
+       odp_crypto_session_t csession = ODP_CRYPTO_SESSION_INVALID;
+       /* odp_crypto_compl_t ccompl; */
+       odp_event_t evt = ODP_EVENT_INVALID;
+       odp_pktio_t pktio = ODP_PKTIO_INVALID;
+       odp_packet_t pkt = ODP_PACKET_INVALID;
+       odp_packet_seg_t pktseg = ODP_PACKET_SEG_INVALID;
+       odp_pool_t pool = ODP_POOL_INVALID;
+       odp_queue_t queue = ODP_QUEUE_INVALID;
+       odp_shm_t shm = ODP_SHM_INVALID;
+
+       /*
+       * Note: These type conversion functions have no defined return values
+       * since they produce implementation-defined values for display
+       * purposes. This test simply verifies that they exist and can be
+       * invoked.
+       */
+
+       CU_ASSERT(odp_buffer_to_u64(buf) ==
+                 odp_buffer_to_u64(ODP_BUFFER_INVALID));
+
+       CU_ASSERT(odp_cos_to_u64(cos) ==
+                 odp_cos_to_u64(ODP_COS_INVALID));
+
+       CU_ASSERT(odp_pmr_to_u64(pmr) ==
+                 odp_pmr_to_u64(ODP_PMR_INVAL));
+
+       CU_ASSERT(odp_pmr_set_to_u64(pmrset) ==
+                 odp_pmr_set_to_u64(ODP_PMR_SET_INVAL));
+
+       CU_ASSERT(odp_crypto_session_to_u64(csession) ==
+                 odp_crypto_session_to_u64(ODP_CRYPTO_SESSION_INVALID));
+
+       /*
+       CU_ASSERT(odp_crypto_compl_to_u64(ccompl) ==
+                 odp_crypto_compl_to_u64(ccompl));
+       */
+
+       CU_ASSERT(odp_event_to_u64(evt) ==
+                 odp_event_to_u64(ODP_EVENT_INVALID));
+
+       CU_ASSERT(odp_pktio_to_u64(pktio) ==
+                 odp_pktio_to_u64(ODP_PKTIO_INVALID));
+
+       CU_ASSERT(odp_packet_to_u64(pkt) ==
+                 odp_packet_to_u64(ODP_PACKET_INVALID));
+
+       CU_ASSERT(odp_packet_seg_to_u64(pktseg) ==
+                 odp_packet_seg_to_u64(ODP_PACKET_SEG_INVALID));
+
+       CU_ASSERT(odp_pool_to_u64(pool) ==
+                 odp_pool_to_u64(ODP_POOL_INVALID));
+
+       CU_ASSERT(odp_queue_to_u64(queue) ==
+                 odp_queue_to_u64(ODP_QUEUE_INVALID));
+
+       CU_ASSERT(odp_shm_to_u64(shm) ==
+                 odp_shm_to_u64(ODP_SHM_INVALID));
+}
+
+CU_TestInfo test_odp_type_display[] = {
+       {"ODP abstract type diplay test", test_odp_strong_types},
+       CU_TEST_INFO_NULL,
+};
+
+CU_SuiteInfo odp_testsuites[] = {
+       { "ODP abstract type display functions",
+         NULL, NULL, NULL, NULL,
+         test_odp_type_display,
+       },
+       CU_SUITE_INFO_NULL,
+};
-- 
2.1.0


_______________________________________________
lng-odp mailing list
lng-odp@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/lng-odp

Reply via email to