On 15 December 2014 at 01:35, Jerin Jacob <jerin.ja...@caviumnetworks.com> wrote: > > On Fri, Dec 12, 2014 at 03:40:29PM -0500, Mike Holmes wrote: > > Add tests for ODP system_info interface > > > > Signed-off-by: Mike Holmes <mike.hol...@linaro.org> > > --- > > > > This api has poor documentaion, these testis attempt to do something > sensible > > against linux-generic in its present form. > > > > test/validation/.gitignore | 1 + > > test/validation/Makefile.am | 4 ++- > > test/validation/odp_system.c | 73 > ++++++++++++++++++++++++++++++++++++++++++++ > > 3 files changed, 77 insertions(+), 1 deletion(-) > > create mode 100644 test/validation/odp_system.c > > > > diff --git a/test/validation/.gitignore b/test/validation/.gitignore > > index 32834ae..a388488 100644 > > --- a/test/validation/.gitignore > > +++ b/test/validation/.gitignore > > @@ -5,3 +5,4 @@ odp_queue > > odp_crypto > > odp_schedule > > odp_shm > > +odp_system > > diff --git a/test/validation/Makefile.am b/test/validation/Makefile.am > > index d0b5426..98376b9 100644 > > --- a/test/validation/Makefile.am > > +++ b/test/validation/Makefile.am > > @@ -6,7 +6,7 @@ AM_LDFLAGS += -static > > if ODP_CUNIT_ENABLED > > TESTS = ${bin_PROGRAMS} > > check_PROGRAMS = ${bin_PROGRAMS} > > -bin_PROGRAMS = odp_init odp_queue odp_crypto odp_shm odp_schedule > > +bin_PROGRAMS = odp_init odp_queue odp_crypto odp_shm odp_schedule > odp_system > > odp_init_LDFLAGS = $(AM_LDFLAGS) > > odp_queue_LDFLAGS = $(AM_LDFLAGS) > > odp_crypto_CFLAGS = $(AM_CFLAGS) -I$(srcdir)/crypto > > @@ -15,6 +15,7 @@ odp_shm_CFLAGS = $(AM_CFLAGS) > > odp_shm_LDFLAGS = $(AM_LDFLAGS) > > odp_schedule_CFLAGS = $(AM_CFLAGS) > > odp_schedule_LDFLAGS = $(AM_LDFLAGS) > > +odp_system_LDFLAGS = $(AM_LDFLAGS) > > endif > > > > dist_odp_init_SOURCES = odp_init.c > > @@ -25,6 +26,7 @@ dist_odp_crypto_SOURCES = > crypto/odp_crypto_test_async_inp.c \ > > odp_crypto.c common/odp_cunit_common.c > > dist_odp_shm_SOURCES = odp_shm.c common/odp_cunit_common.c > > dist_odp_schedule_SOURCES = odp_schedule.c common/odp_cunit_common.c > > +dist_odp_system_SOURCES = odp_system.c common/odp_cunit_common.c > > > > #For Linux generic the unimplemented crypto API functions break the > > #regression TODO: https://bugs.linaro.org/show_bug.cgi?id=975 > > diff --git a/test/validation/odp_system.c b/test/validation/odp_system.c > > new file mode 100644 > > index 0000000..dfad677 > > --- /dev/null > > +++ b/test/validation/odp_system.c > > @@ -0,0 +1,73 @@ > > +/* Copyright (c) 2014, Linaro Limited > > + * All rights reserved. > > + * > > + * SPDX-License-Identifier: BSD-3-Clause > > + */ > > + > > +#include "odp.h" > > +#include "odp_cunit_common.h" > > + > > +static void test_odp_sys_core_count(void) > > +{ > > + int cores; > > + > > + cores = odp_sys_core_count(); > > + CU_ASSERT(0 < cores); > > +} > > + > > +static void test_odp_sys_cache_line_size(void) > > +{ > > + int cache_size; > > + > > + cache_size = odp_sys_cache_line_size(); > > + CU_ASSERT(0 < cache_size); > > May be we can add one more assert here, > CU_ASSERT(ODP_CACHE_LINE_SIZE == cache_size) > > Will fix, linux-generic already does this check already, I will take another pass at trying to get the documentation for these functions to describe their behaviour. Presumably all implementations to perform this check at init time ?
> > +} > > + > > +static void test_odp_sys_cpu_model_str(void) > > +{ > > + char model[128]; > > + > > + snprintf(model, 128, "%s", odp_sys_cpu_model_str()); > > + CU_ASSERT(strlen(model) <= 127); > > + CU_ASSERT_PTR_NOT_NULL(odp_sys_cpu_model_str()); > > +} > > + > > +static void test_odp_sys_page_size(void) > > +{ > > + uint64_t page; > > + > > + page = odp_sys_page_size(); > > + CU_ASSERT(0 < page); > > +} > > + > > +static void test_odp_sys_huge_page_size(void) > > +{ > > + uint64_t page; > > + > > + page = odp_sys_huge_page_size(); > > + CU_ASSERT(0 < page || 0 == page); > > +} > > + > > +static void test_odp_sys_cpu_hz(void) > > +{ > > + uint64_t hz; > > + > > + hz = odp_sys_cpu_hz(); > > + CU_ASSERT(0 < hz); > > +} > > + > > +CU_TestInfo test_odp_system[] = { > > + {"odp_sys_core_count", test_odp_sys_core_count}, > > + {"odp_sys_cache_line_size", test_odp_sys_cache_line_size}, > > + {"odp_sys_cpu_model_str", test_odp_sys_cpu_model_str}, > > + {"odp_sys_page_size", test_odp_sys_page_size}, > > + {"odp_sys_huge_page_size", test_odp_sys_huge_page_size}, > > + {"odp_sys_cpu_hz", test_odp_sys_cpu_hz}, > > + CU_TEST_INFO_NULL, > > +}; > > + > > +CU_SuiteInfo odp_testsuites[] = { > > + {"System Info", NULL, NULL, NULL, NULL, > > + test_odp_system}, > > + CU_SUITE_INFO_NULL, > > +}; > > -- > > 2.1.0 > > > > > > _______________________________________________ > > lng-odp mailing list > > lng-odp@lists.linaro.org > > http://lists.linaro.org/mailman/listinfo/lng-odp > -- *Mike Holmes* Linaro Sr Technical Manager LNG - ODP
_______________________________________________ lng-odp mailing list lng-odp@lists.linaro.org http://lists.linaro.org/mailman/listinfo/lng-odp