libperf: Keep count of failed tests
authorJiri Olsa <jolsa@kernel.org>
Thu, 17 Oct 2019 10:59:16 +0000 (12:59 +0200)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Sat, 19 Oct 2019 18:35:01 +0000 (15:35 -0300)
Keep the count of failed tests, so we get better output with failures,
like:

  # make tests
  ...
  running static:
  - running test-cpumap.c...OK
  - running test-threadmap.c...OK
  - running test-evlist.c...FAILED test-evlist.c:53 failed to create evsel2
  FAILED test-evlist.c:163 failed to create evsel2
  FAILED test-evlist.c:287 failed count
    FAILED (3)
  - running test-evsel.c...OK
  running dynamic:
  - running test-cpumap.c...OK
  - running test-threadmap.c...OK
  - running test-evlist.c...FAILED test-evlist.c:53 failed to create evsel2
  FAILED test-evlist.c:163 failed to create evsel2
  FAILED test-evlist.c:287 failed count
    FAILED (3)
  - running test-evsel.c...OK
 ...

Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Alexey Budankov <alexey.budankov@linux.intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Jin Yao <yao.jin@linux.intel.com>
Cc: Michael Petlan <mpetlan@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Link: http://lore.kernel.org/lkml/20191017105918.20873-9-jolsa@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/lib/include/internal/tests.h
tools/perf/lib/tests/test-cpumap.c
tools/perf/lib/tests/test-evlist.c
tools/perf/lib/tests/test-evsel.c
tools/perf/lib/tests/test-threadmap.c

index b7a20cd24ee133744793e8c578ac0b38a2d338c0..2093e8868a674487936f692bdeee375ecc7afe12 100644 (file)
@@ -4,14 +4,28 @@
 
 #include <stdio.h>
 
-#define __T_START fprintf(stdout, "- running %s...", __FILE__)
-#define __T_OK    fprintf(stdout, "OK\n")
-#define __T_FAIL  fprintf(stdout, "FAIL\n")
+int tests_failed;
+
+#define __T_START                                      \
+do {                                                   \
+       fprintf(stdout, "- running %s...", __FILE__);   \
+       fflush(NULL);                                   \
+       tests_failed = 0;                               \
+} while (0)
+
+#define __T_END                                                                \
+do {                                                                   \
+       if (tests_failed)                                               \
+               fprintf(stdout, "  FAILED (%d)\n", tests_failed);       \
+       else                                                            \
+               fprintf(stdout, "OK\n");                                \
+} while (0)
 
 #define __T(text, cond)                                                          \
 do {                                                                             \
        if (!(cond)) {                                                           \
                fprintf(stderr, "FAILED %s:%d %s\n", __FILE__, __LINE__, text);  \
+               tests_failed++;                                                  \
                return -1;                                                       \
        }                                                                        \
 } while (0)
index aa34c20df07eb7044c0fa8dfc9786d3abc1b2992..c8d45091e7c26a3bede00f38dc72b03f83d435b4 100644 (file)
@@ -26,6 +26,6 @@ int main(int argc, char **argv)
        perf_cpu_map__put(cpus);
        perf_cpu_map__put(cpus);
 
-       __T_OK;
+       __T_END;
        return 0;
 }
index 741bc1bb45242a875667ff0b916a2561358d26d3..6d8ebe0c25042f7c6902744967c0cb7074db62c8 100644 (file)
@@ -408,6 +408,6 @@ int main(int argc, char **argv)
        test_mmap_thread();
        test_mmap_cpus();
 
-       __T_OK;
+       __T_END;
        return 0;
 }
index 1b6c4285ac2b90e000dea93b3b908b8671a206aa..135722ac965bf7dcd75a3d50dc2bc9250cfd89a2 100644 (file)
@@ -130,6 +130,6 @@ int main(int argc, char **argv)
        test_stat_thread();
        test_stat_thread_enable();
 
-       __T_OK;
+       __T_END;
        return 0;
 }
index 8c5f47247d9ede0274dbb47cb59f4ed1764aec24..7dc4d6fbeddee5bdc4b0f0316f8b6a1814fa2c6b 100644 (file)
@@ -26,6 +26,6 @@ int main(int argc, char **argv)
        perf_thread_map__put(threads);
        perf_thread_map__put(threads);
 
-       __T_OK;
+       __T_END;
        return 0;
 }