summaryrefslogtreecommitdiffstats
path: root/test/env/cmd_ut_env.c
diff options
context:
space:
mode:
authorJoe Hershberger <joe.hershberger@ni.com>2015-05-20 14:27:36 -0500
committerTom Rini <trini@konsulko.com>2015-05-21 09:16:18 -0400
commit421f86f3293c63fa2669972fb7bdc5ae78729e50 (patch)
tree0a4cf02061c15201325179e5aa8842871ee0a284 /test/env/cmd_ut_env.c
parentb6227d3993db8f1763a8bd377b189e7b77cfe885 (diff)
downloadtalos-obmc-uboot-421f86f3293c63fa2669972fb7bdc5ae78729e50.tar.gz
talos-obmc-uboot-421f86f3293c63fa2669972fb7bdc5ae78729e50.zip
test: env: Add test framework for env
Add a new "env" subcommand to the ut command. This will run unit tests on the env code. This should be targetable to any device that supports the env features needed for the tests. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com> Reviewed-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'test/env/cmd_ut_env.c')
-rw-r--r--test/env/cmd_ut_env.c37
1 files changed, 37 insertions, 0 deletions
diff --git a/test/env/cmd_ut_env.c b/test/env/cmd_ut_env.c
new file mode 100644
index 0000000000..893e5e6a6d
--- /dev/null
+++ b/test/env/cmd_ut_env.c
@@ -0,0 +1,37 @@
+/*
+ * (C) Copyright 2015
+ * Joe Hershberger, National Instruments, joe.hershberger@ni.com
+ *
+ * SPDX-License-Identifier: GPL-2.0
+ */
+
+#include <common.h>
+#include <command.h>
+#include <test/env.h>
+#include <test/suites.h>
+#include <test/ut.h>
+
+int do_ut_env(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
+{
+ struct unit_test *tests = ll_entry_start(struct unit_test, env_test);
+ const int n_ents = ll_entry_count(struct unit_test, env_test);
+ struct unit_test_state uts = { .fail_count = 0 };
+ struct unit_test *test;
+
+ if (argc == 1)
+ printf("Running %d environment tests\n", n_ents);
+
+ for (test = tests; test < tests + n_ents; test++) {
+ if (argc > 1 && strcmp(argv[1], test->name))
+ continue;
+ printf("Test: %s\n", test->name);
+
+ uts.start = mallinfo();
+
+ test->func(&uts);
+ }
+
+ printf("Failures: %d\n", uts.fail_count);
+
+ return uts.fail_count ? CMD_RET_FAILURE : 0;
+}
OpenPOWER on IntegriCloud