aboutsummaryrefslogtreecommitdiff
path: root/helper/test/macros.c
diff options
context:
space:
mode:
Diffstat (limited to 'helper/test/macros.c')
-rw-r--r--helper/test/macros.c71
1 files changed, 71 insertions, 0 deletions
diff --git a/helper/test/macros.c b/helper/test/macros.c
new file mode 100644
index 000000000..7ecf7bb2d
--- /dev/null
+++ b/helper/test/macros.c
@@ -0,0 +1,71 @@
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2023 Nokia
+ */
+
+#include <odp_api.h>
+#include <odp/helper/odph_api.h>
+
+#include <stdio.h>
+#include <stdlib.h>
+
+int main(int argc ODP_UNUSED, char *argv[] ODP_UNUSED)
+{
+ int a, b;
+ int ret = 0;
+ int arr_1[1];
+ int arr_10[10];
+
+ printf("Running helper macro tests\n");
+
+ if (ODPH_MIN(0, 10) != 0)
+ ret++;
+
+ if (ODPH_MAX(0, 10) != 10)
+ ret++;
+
+ if (ODPH_MIN(-1, 10) != -1)
+ ret++;
+
+ if (ODPH_MAX(-1, 10) != 10)
+ ret++;
+
+ a = 0;
+ b = 10;
+ if (ODPH_MIN(a--, b--) != 0)
+ ret++;
+
+ a = 0;
+ b = 10;
+ if (ODPH_MAX(++a, ++b) != 11)
+ ret++;
+
+ if (ODPH_ARRAY_SIZE(arr_1) != 1)
+ ret++;
+
+ if (ODPH_ARRAY_SIZE(arr_10) != 10)
+ ret++;
+
+ if (ODPH_ABS(-1) != 1)
+ ret++;
+
+ if (ODPH_ABS(1) != 1)
+ ret++;
+
+ if (ODPH_ABS(0) != 0)
+ ret++;
+
+ a = -1;
+ if (ODPH_ABS(a++) != 1)
+ ret++;
+
+ a = -1;
+ if (ODPH_ABS(--a) != 2)
+ ret++;
+
+ if (!ret)
+ printf("All tests passed\n");
+ else
+ printf("%d tests failed\n", ret);
+
+ return ret ? EXIT_FAILURE : EXIT_SUCCESS;
+}