aboutsummaryrefslogtreecommitdiff
path: root/test/validation
diff options
context:
space:
mode:
authorMike Holmes <mike.holmes@linaro.org>2015-07-10 17:31:10 -0400
committerMaxim Uvarov <maxim.uvarov@linaro.org>2015-07-23 19:21:52 +0300
commitcbf9589b5afbc8ca2902123bf1c47f3d3b24880f (patch)
tree04f7daea9f749262965776a3d7979d7ca6b3b0e6 /test/validation
parent0ebee2bb8078c5a42f4047e3c3d09e03a65141fb (diff)
validation: cpumask: test def_control and setall APIs
Signed-off-by: Mike Holmes <mike.holmes@linaro.org> Reviewed-and-Tested-by: Bill Fischofer <bill.fischofer@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
Diffstat (limited to 'test/validation')
-rw-r--r--test/validation/cpumask/cpumask.c57
1 files changed, 57 insertions, 0 deletions
diff --git a/test/validation/cpumask/cpumask.c b/test/validation/cpumask/cpumask.c
index 943a8e074..d4daa6140 100644
--- a/test/validation/cpumask/cpumask.c
+++ b/test/validation/cpumask/cpumask.c
@@ -30,6 +30,9 @@
/* padding pattern used to check buffer overflow: */
#define FILLING_PATTERN 0x55
+/* default worker paramiter to get all that may be available */
+#define ALL_AVAILABLE 0
+
/*
* returns the length of a string, excluding terminating NULL.
* As its C lib strlen equivalent. Just rewritten here to avoid C lib
@@ -456,6 +459,56 @@ static void cpumask_test_odp_cpumask_next(void)
CU_ASSERT(odp_cpumask_next(&mask1, i) == expected[i]);
}
+static void cpumask_test_odp_cpumask_setall(void)
+{
+ int num_cpus;
+ int max_cpus = get_max_number_of_cpus_in_a_mask();
+ odp_cpumask_t mask;
+
+ odp_cpumask_setall(&mask);
+ num_cpus = odp_cpumask_count(&mask);
+
+ CU_ASSERT(num_cpus > 0);
+ CU_ASSERT(num_cpus >= max_cpus);
+}
+
+static void cpumask_test_odp_cpumask_def_control(void)
+{
+ int num;
+ int max_cpus = get_max_number_of_cpus_in_a_mask();
+ odp_cpumask_t mask;
+
+ num = odp_cpumask_def_control(&mask, ALL_AVAILABLE);
+
+ CU_ASSERT(num >= 0);
+ CU_ASSERT(num <= max_cpus);
+}
+
+static void cpumask_test_odp_cpumask_def_worker(void)
+{
+ int num;
+ int max_cpus = get_max_number_of_cpus_in_a_mask();
+ odp_cpumask_t mask;
+
+ num = odp_cpumask_def_worker(&mask, ALL_AVAILABLE);
+
+ CU_ASSERT(num >= 0);
+ CU_ASSERT(num <= max_cpus);
+}
+
+static void cpumask_test_odp_cpumask_def(void)
+{
+ int num_worker;
+ int num_control;
+ int max_cpus = get_max_number_of_cpus_in_a_mask();
+ odp_cpumask_t mask;
+
+ num_worker = odp_cpumask_def_worker(&mask, max_cpus - 1);
+ num_control = odp_cpumask_def_control(&mask, 1);
+
+ CU_ASSERT((num_control + num_worker) == max_cpus);
+}
+
static CU_TestInfo cpumask_suite[] = {
{"odp_cpumask_to/from_str()", cpumask_test_odp_cpumask_to_from_str},
{"odp_cpumask_equal()", cpumask_test_odp_cpumask_equal},
@@ -471,6 +524,10 @@ static CU_TestInfo cpumask_suite[] = {
{"odp_cpumask_first()", cpumask_test_odp_cpumask_first},
{"odp_cpumask_last()", cpumask_test_odp_cpumask_last},
{"odp_cpumask_next()", cpumask_test_odp_cpumask_next},
+ {"odp_cpumask_setall()", cpumask_test_odp_cpumask_setall},
+ {"odp_cpumask_def_control()", cpumask_test_odp_cpumask_def_control},
+ {"odp_cpumask_def_worker()", cpumask_test_odp_cpumask_def_worker},
+ {"odp_cpumask_def()", cpumask_test_odp_cpumask_def},
CU_TEST_INFO_NULL,
};