summaryrefslogtreecommitdiffstats
path: root/tools/perf/tests/is_printable_array.c
diff options
context:
space:
mode:
authorJiri Olsa <jolsa@kernel.org>2016-07-16 18:11:20 +0200
committerArnaldo Carvalho de Melo <acme@redhat.com>2016-07-18 19:50:35 -0300
commit988dd774dcbd9151c2a643fc7284c5c3c4d0adb7 (patch)
treeff17370ff5f36680ca7f71df0b9444747699348c /tools/perf/tests/is_printable_array.c
parentaccaed2659530b4047678070cb23fd1d9a1c1a59 (diff)
downloadlinux-988dd774dcbd9151c2a643fc7284c5c3c4d0adb7.tar.gz
linux-988dd774dcbd9151c2a643fc7284c5c3c4d0adb7.tar.bz2
linux-988dd774dcbd9151c2a643fc7284c5c3c4d0adb7.zip
perf tests: Add is_printable_array test
Add automated test for is_printable_array function. Signed-off-by: Jiri Olsa <jolsa@kernel.org> Cc: David Ahern <dsahern@gmail.com> Cc: Jiri Pirko <jiri@mellanox.com> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Steven Rostedt <rostedt@goodmis.org> Link: http://lkml.kernel.org/r/1468685480-18951-4-git-send-email-jolsa@kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf/tests/is_printable_array.c')
-rw-r--r--tools/perf/tests/is_printable_array.c36
1 files changed, 36 insertions, 0 deletions
diff --git a/tools/perf/tests/is_printable_array.c b/tools/perf/tests/is_printable_array.c
new file mode 100644
index 000000000000..42e13393e502
--- /dev/null
+++ b/tools/perf/tests/is_printable_array.c
@@ -0,0 +1,36 @@
+#include <linux/compiler.h>
+#include "tests.h"
+#include "debug.h"
+#include "util.h"
+
+int test__is_printable_array(int subtest __maybe_unused)
+{
+ char buf1[] = { 'k', 'r', 4, 'v', 'a', 0 };
+ char buf2[] = { 'k', 'r', 'a', 'v', 4, 0 };
+ struct {
+ char *buf;
+ unsigned int len;
+ int ret;
+ } t[] = {
+ { (char *) "krava", sizeof("krava"), 1 },
+ { (char *) "krava", sizeof("krava") - 1, 0 },
+ { (char *) "", sizeof(""), 1 },
+ { (char *) "", 0, 0 },
+ { NULL, 0, 0 },
+ { buf1, sizeof(buf1), 0 },
+ { buf2, sizeof(buf2), 0 },
+ };
+ unsigned int i;
+
+ for (i = 0; i < ARRAY_SIZE(t); i++) {
+ int ret;
+
+ ret = is_printable_array((char *) t[i].buf, t[i].len);
+ if (ret != t[i].ret) {
+ pr_err("failed: test %u\n", i);
+ return TEST_FAIL;
+ }
+ }
+
+ return TEST_OK;
+}