* [igt-dev] [PATCH i-g-t 1/3] runner: Add --prune-dynamic-results
@ 2020-04-22 11:19 Petri Latvala
2020-04-22 11:19 ` [igt-dev] [PATCH i-g-t 2/3] TO BE SQUASHED OVER: Copy dynamic-subtests json test Petri Latvala
` (3 more replies)
0 siblings, 4 replies; 6+ messages in thread
From: Petri Latvala @ 2020-04-22 11:19 UTC (permalink / raw)
To: igt-dev; +Cc: Lucas De Marchi, Petri Latvala
Before, if a test had dynamic subtests, igt_runner reported only the
dynamic subtest results and didn't report the subtest itself at
all. For some particular scenarios the opposite reporting is desired,
so add --prune-dynamic-results flag to igt_runner to achieve that
opposite reporting style.
Signed-off-by: Petri Latvala <petri.latvala@intel.com>
Cc: Lucas De Marchi <lucas.demarchi@intel.com>
Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
---
runner/resultgen.c | 39 +++++++++++++++++++++++----------------
runner/runner_tests.c | 5 +++++
runner/settings.c | 12 ++++++++++++
runner/settings.h | 1 +
4 files changed, 41 insertions(+), 16 deletions(-)
diff --git a/runner/resultgen.c b/runner/resultgen.c
index fe59aafe..37560cd8 100644
--- a/runner/resultgen.c
+++ b/runner/resultgen.c
@@ -668,7 +668,8 @@ static void process_dynamic_subtest_output(const char *piglit_name,
}
}
-static bool fill_from_output(int fd, const char *binary, const char *key,
+static bool fill_from_output(int fd, struct settings *settings,
+ const char *binary, const char *key,
struct subtest_list *subtests,
struct json_object *tests)
{
@@ -760,14 +761,15 @@ static bool fill_from_output(int fd, const char *binary, const char *key,
set_runtime(current_test, time);
}
- process_dynamic_subtest_output(piglit_name,
- igt_version, igt_version_len,
- matches,
- begin_idx, result_idx,
- beg, end,
- key,
- tests,
- &subtests->subs[i]);
+ if (!settings->prune_dynamics)
+ process_dynamic_subtest_output(piglit_name,
+ igt_version, igt_version_len,
+ matches,
+ begin_idx, result_idx,
+ beg, end,
+ key,
+ tests,
+ &subtests->subs[i]);
}
free_matches(&matches);
@@ -1008,7 +1010,8 @@ static bool fill_from_dmesg(int fd,
current_test = get_or_create_json_object(tests, piglit_name);
}
- if (current_test != NULL &&
+ if (!settings->prune_dynamics &&
+ current_test != NULL &&
(dynamic_subtest = strstr(message, STARTING_DYNAMIC_SUBTEST_DMESG)) != NULL) {
if (current_dynamic_test != NULL) {
/* Done with the previous dynamic subtest, file up */
@@ -1029,19 +1032,22 @@ static bool fill_from_dmesg(int fd,
if ((flags & 0x07) <= settings->dmesg_warn_level && continuation != 'c' &&
g_regex_match(re, message, 0, NULL)) {
append_line(&warnings, &warningslen, formatted);
- if (current_test != NULL)
+ if (!settings->prune_dynamics &&
+ current_test != NULL)
append_line(&dynamic_warnings, &dynamic_warnings_len, formatted);
}
} else {
if ((flags & 0x07) <= settings->dmesg_warn_level && continuation != 'c' &&
!g_regex_match(re, message, 0, NULL)) {
append_line(&warnings, &warningslen, formatted);
- if (current_test != NULL)
+ if (!settings->prune_dynamics &&
+ current_test != NULL)
append_line(&dynamic_warnings, &dynamic_warnings_len, formatted);
}
}
append_line(&dmesg, &dmesglen, formatted);
- append_line(&dynamic_dmesg, &dynamic_dmesg_len, formatted);
+ if (!settings->prune_dynamics)
+ append_line(&dynamic_dmesg, &dynamic_dmesg_len, formatted);
free(formatted);
}
free(line);
@@ -1456,15 +1462,16 @@ static bool parse_test_directory(int dirfd,
*/
fill_from_journal(fds[_F_JOURNAL], entry, &subtests, results);
- if (!fill_from_output(fds[_F_OUT], entry->binary, "out", &subtests, results->tests) ||
- !fill_from_output(fds[_F_ERR], entry->binary, "err", &subtests, results->tests) ||
+ if (!fill_from_output(fds[_F_OUT], settings, entry->binary, "out", &subtests, results->tests) ||
+ !fill_from_output(fds[_F_ERR], settings, entry->binary, "err", &subtests, results->tests) ||
!fill_from_dmesg(fds[_F_DMESG], settings, entry->binary, &subtests, results->tests)) {
fprintf(stderr, "Error parsing output files\n");
status = false;
goto parse_output_end;
}
- prune_subtests_with_dynamic_subtests(entry->binary, &subtests, results->tests);
+ if (!settings->prune_dynamics)
+ prune_subtests_with_dynamic_subtests(entry->binary, &subtests, results->tests);
override_results(entry->binary, &subtests, results->tests);
add_to_totals(entry->binary, &subtests, results);
diff --git a/runner/runner_tests.c b/runner/runner_tests.c
index 60e00960..000670a9 100644
--- a/runner/runner_tests.c
+++ b/runner/runner_tests.c
@@ -193,6 +193,7 @@ static void assert_settings_equal(struct settings *one, struct settings *two)
igt_assert_eq(one->inactivity_timeout, two->inactivity_timeout);
igt_assert_eq(one->per_test_timeout, two->per_test_timeout);
igt_assert_eq(one->use_watchdog, two->use_watchdog);
+ igt_assert_eq(one->prune_dynamics, two->prune_dynamics);
igt_assert_eqstr(one->test_root, two->test_root);
igt_assert_eqstr(one->results_path, two->results_path);
igt_assert_eq(one->piglit_style_dmesg, two->piglit_style_dmesg);
@@ -283,6 +284,7 @@ igt_main
igt_assert_eq(settings->per_test_timeout, 0);
igt_assert_eq(settings->overall_timeout, 0);
igt_assert(!settings->use_watchdog);
+ igt_assert_eq(settings->prune_dynamics, 0);
igt_assert(strstr(settings->test_root, "test-root-dir") != NULL);
igt_assert(strstr(settings->results_path, "path-to-results") != NULL);
@@ -401,6 +403,7 @@ igt_main
igt_assert_eq(settings->per_test_timeout, 0);
igt_assert_eq(settings->overall_timeout, 0);
igt_assert(!settings->use_watchdog);
+ igt_assert_eq(settings->prune_dynamics, 0);
igt_assert(strstr(settings->test_root, testdatadir) != NULL);
igt_assert(strstr(settings->results_path, "path-to-results") != NULL);
igt_assert(!settings->piglit_style_dmesg);
@@ -434,6 +437,7 @@ igt_main
"--use-watchdog",
"--piglit-style-dmesg",
"--dmesg-warn-level=3",
+ "--prune-dynamic-results",
"test-root-dir",
"path-to-results",
};
@@ -463,6 +467,7 @@ igt_main
igt_assert_eq(settings->per_test_timeout, 72);
igt_assert_eq(settings->overall_timeout, 360);
igt_assert(settings->use_watchdog);
+ igt_assert_eq(settings->prune_dynamics, 1);
igt_assert(strstr(settings->test_root, "test-root-dir") != NULL);
igt_assert(strstr(settings->results_path, "path-to-results") != NULL);
diff --git a/runner/settings.c b/runner/settings.c
index d18e55d1..501fe2a0 100644
--- a/runner/settings.c
+++ b/runner/settings.c
@@ -24,6 +24,7 @@ enum {
OPT_OVERALL_TIMEOUT,
OPT_PER_TEST_TIMEOUT,
OPT_VERSION,
+ OPT_PRUNE_DYNAMICS,
OPT_HELP = 'h',
OPT_NAME = 'n',
OPT_DRY_RUN = 'd',
@@ -188,6 +189,11 @@ static const char *usage_str =
" (longer) filter list means the test result should\n"
" change. KERN_NOTICE dmesg level is treated as warn,\n"
" unless overridden with --dmesg-warn-level.\n"
+ " --prune-dynamic-results\n"
+ " Don't report results for dynamic subtests separately, only\n"
+ " the containing subtest's result. By default, the containing\n"
+ " subtest's result is omitted and dynamic subtests are reported\n"
+ " instead.\n"
" -b, --blacklist FILENAME\n"
" Exclude all test matching to regexes from FILENAME\n"
" (can be used more than once)\n"
@@ -350,6 +356,7 @@ bool parse_options(int argc, char **argv,
{"use-watchdog", no_argument, NULL, OPT_WATCHDOG},
{"piglit-style-dmesg", no_argument, NULL, OPT_PIGLIT_DMESG},
{"dmesg-warn-level", required_argument, NULL, OPT_DMESG_WARN_LEVEL},
+ {"prune-dynamic-results", no_argument, NULL, OPT_PRUNE_DYNAMICS},
{"blacklist", required_argument, NULL, OPT_BLACKLIST},
{"list-all", no_argument, NULL, OPT_LIST_ALL},
{ 0, 0, 0, 0},
@@ -429,6 +436,9 @@ bool parse_options(int argc, char **argv,
case OPT_DMESG_WARN_LEVEL:
settings->dmesg_warn_level = atoi(optarg);
break;
+ case OPT_PRUNE_DYNAMICS:
+ settings->prune_dynamics = 1;
+ break;
case OPT_BLACKLIST:
if (!parse_blacklist(&settings->exclude_regexes,
absolute_path(optarg)))
@@ -649,6 +659,7 @@ bool serialize_settings(struct settings *settings)
SERIALIZE_LINE(f, settings, use_watchdog, "%d");
SERIALIZE_LINE(f, settings, piglit_style_dmesg, "%d");
SERIALIZE_LINE(f, settings, dmesg_warn_level, "%d");
+ SERIALIZE_LINE(f, settings, prune_dynamics, "%d");
SERIALIZE_LINE(f, settings, test_root, "%s");
SERIALIZE_LINE(f, settings, results_path, "%s");
@@ -695,6 +706,7 @@ bool read_settings_from_file(struct settings *settings, FILE *f)
PARSE_LINE(settings, name, val, use_watchdog, numval);
PARSE_LINE(settings, name, val, piglit_style_dmesg, numval);
PARSE_LINE(settings, name, val, dmesg_warn_level, numval);
+ PARSE_LINE(settings, name, val, prune_dynamics, numval);
PARSE_LINE(settings, name, val, test_root, val ? strdup(val) : NULL);
PARSE_LINE(settings, name, val, results_path, val ? strdup(val) : NULL);
diff --git a/runner/settings.h b/runner/settings.h
index 5203ec6e..32faa6ec 100644
--- a/runner/settings.h
+++ b/runner/settings.h
@@ -45,6 +45,7 @@ struct settings {
char *results_path;
bool piglit_style_dmesg;
int dmesg_warn_level;
+ bool prune_dynamics;
bool list_all;
};
--
2.20.1
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 6+ messages in thread* [igt-dev] [PATCH i-g-t 2/3] TO BE SQUASHED OVER: Copy dynamic-subtests json test
2020-04-22 11:19 [igt-dev] [PATCH i-g-t 1/3] runner: Add --prune-dynamic-results Petri Latvala
@ 2020-04-22 11:19 ` Petri Latvala
2020-04-22 11:19 ` [igt-dev] [PATCH i-g-t 3/3] runner: Add json unit test for --prune-dynamic-results Petri Latvala
` (2 subsequent siblings)
3 siblings, 0 replies; 6+ messages in thread
From: Petri Latvala @ 2020-04-22 11:19 UTC (permalink / raw)
To: igt-dev; +Cc: Petri Latvala
This commit is just a copy of runner/json_test_data/dynamic-subtests
to make it easier to see in the later patch what is different in
dynamic-subtests-prune-dynamics. Will be squashed when merging.
Signed-off-by: Petri Latvala <petri.latvala@intel.com>
Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
---
.../0/dmesg.txt | 7 +
.../dynamic-subtests-prune-dynamics/0/err.txt | 36 +++++
.../0/journal.txt | 2 +
.../dynamic-subtests-prune-dynamics/0/out.txt | 19 +++
.../1/dmesg.txt | 5 +
.../dynamic-subtests-prune-dynamics/1/err.txt | 2 +
.../1/journal.txt | 2 +
.../dynamic-subtests-prune-dynamics/1/out.txt | 5 +
.../2/dmesg.txt | 11 ++
.../dynamic-subtests-prune-dynamics/2/err.txt | 8 ++
.../2/journal.txt | 4 +
.../dynamic-subtests-prune-dynamics/2/out.txt | 10 ++
.../README.txt | 2 +
.../endtime.txt | 1 +
.../joblist.txt | 3 +
.../metadata.txt | 12 ++
.../reference.json | 135 ++++++++++++++++++
.../starttime.txt | 1 +
.../dynamic-subtests-prune-dynamics/uname.txt | 1 +
19 files changed, 266 insertions(+)
create mode 100644 runner/json_tests_data/dynamic-subtests-prune-dynamics/0/dmesg.txt
create mode 100644 runner/json_tests_data/dynamic-subtests-prune-dynamics/0/err.txt
create mode 100644 runner/json_tests_data/dynamic-subtests-prune-dynamics/0/journal.txt
create mode 100644 runner/json_tests_data/dynamic-subtests-prune-dynamics/0/out.txt
create mode 100644 runner/json_tests_data/dynamic-subtests-prune-dynamics/1/dmesg.txt
create mode 100644 runner/json_tests_data/dynamic-subtests-prune-dynamics/1/err.txt
create mode 100644 runner/json_tests_data/dynamic-subtests-prune-dynamics/1/journal.txt
create mode 100644 runner/json_tests_data/dynamic-subtests-prune-dynamics/1/out.txt
create mode 100644 runner/json_tests_data/dynamic-subtests-prune-dynamics/2/dmesg.txt
create mode 100644 runner/json_tests_data/dynamic-subtests-prune-dynamics/2/err.txt
create mode 100644 runner/json_tests_data/dynamic-subtests-prune-dynamics/2/journal.txt
create mode 100644 runner/json_tests_data/dynamic-subtests-prune-dynamics/2/out.txt
create mode 100644 runner/json_tests_data/dynamic-subtests-prune-dynamics/README.txt
create mode 100644 runner/json_tests_data/dynamic-subtests-prune-dynamics/endtime.txt
create mode 100644 runner/json_tests_data/dynamic-subtests-prune-dynamics/joblist.txt
create mode 100644 runner/json_tests_data/dynamic-subtests-prune-dynamics/metadata.txt
create mode 100644 runner/json_tests_data/dynamic-subtests-prune-dynamics/reference.json
create mode 100644 runner/json_tests_data/dynamic-subtests-prune-dynamics/starttime.txt
create mode 100644 runner/json_tests_data/dynamic-subtests-prune-dynamics/uname.txt
diff --git a/runner/json_tests_data/dynamic-subtests-prune-dynamics/0/dmesg.txt b/runner/json_tests_data/dynamic-subtests-prune-dynamics/0/dmesg.txt
new file mode 100644
index 00000000..c87b4271
--- /dev/null
+++ b/runner/json_tests_data/dynamic-subtests-prune-dynamics/0/dmesg.txt
@@ -0,0 +1,7 @@
+6,1157,23426155175691,-;Console: switching to colour dummy device 80x25
+14,1158,23426155175708,-;[IGT] dynamic: executing
+14,1159,23426155184875,-;[IGT] dynamic: starting subtest debug-log-checking
+14,1160,23426155184895,-;[IGT] dynamic: starting dynamic subtest this-is-dynamic-1
+14,1161,23426155240164,-;[IGT] dynamic: starting dynamic subtest this-is-dynamic-2
+14,1162,23426155293846,-;[IGT] dynamic: exiting, ret=98
+6,1163,23426155294003,-;Console: switching to colour frame buffer device 240x75
diff --git a/runner/json_tests_data/dynamic-subtests-prune-dynamics/0/err.txt b/runner/json_tests_data/dynamic-subtests-prune-dynamics/0/err.txt
new file mode 100644
index 00000000..3c280788
--- /dev/null
+++ b/runner/json_tests_data/dynamic-subtests-prune-dynamics/0/err.txt
@@ -0,0 +1,36 @@
+Starting subtest: debug-log-checking
+Starting dynamic subtest: this-is-dynamic-1
+(dynamic:20904) CRITICAL: Test assertion failure function __real_main3, file ../runner/testdata/dynamic.c:8:
+(dynamic:20904) CRITICAL: Failed assertion: false
+Dynamic subtest this-is-dynamic-1 failed.
+**** DEBUG ****
+(dynamic:20904) DEBUG: This print is from 1
+(dynamic:20904) CRITICAL: Test assertion failure function __real_main3, file ../runner/testdata/dynamic.c:8:
+(dynamic:20904) CRITICAL: Failed assertion: false
+(dynamic:20904) igt_core-INFO: Stack trace:
+(dynamic:20904) igt_core-INFO: #0 ../lib/igt_core.c:1607 __igt_fail_assert()
+(dynamic:20904) igt_core-INFO: #1 ../runner/testdata/dynamic.c:11 __real_main3()
+(dynamic:20904) igt_core-INFO: #2 ../runner/testdata/dynamic.c:3 main()
+(dynamic:20904) igt_core-INFO: #3 ../csu/libc-start.c:342 __libc_start_main()
+(dynamic:20904) igt_core-INFO: #4 [_start+0x2a]
+**** END ****
+Dynamic subtest this-is-dynamic-1: FAIL (0.055s)
+Starting dynamic subtest: this-is-dynamic-2
+(dynamic:20904) CRITICAL: Test assertion failure function __real_main3, file ../runner/testdata/dynamic.c:13:
+(dynamic:20904) CRITICAL: Failed assertion: false
+Dynamic subtest this-is-dynamic-2 failed.
+**** DEBUG ****
+(dynamic:20904) DEBUG: This print is from 2
+(dynamic:20904) CRITICAL: Test assertion failure function __real_main3, file ../runner/testdata/dynamic.c:13:
+(dynamic:20904) CRITICAL: Failed assertion: false
+(dynamic:20904) igt_core-INFO: Stack trace:
+(dynamic:20904) igt_core-INFO: #0 ../lib/igt_core.c:1607 __igt_fail_assert()
+(dynamic:20904) igt_core-INFO: #1 ../runner/testdata/dynamic.c:5 __real_main3()
+(dynamic:20904) igt_core-INFO: #2 ../runner/testdata/dynamic.c:3 main()
+(dynamic:20904) igt_core-INFO: #3 ../csu/libc-start.c:342 __libc_start_main()
+(dynamic:20904) igt_core-INFO: #4 [_start+0x2a]
+**** END ****
+Dynamic subtest this-is-dynamic-2: FAIL (0.054s)
+Subtest debug-log-checking failed.
+No log.
+Subtest debug-log-checking: FAIL (0.109s)
diff --git a/runner/json_tests_data/dynamic-subtests-prune-dynamics/0/journal.txt b/runner/json_tests_data/dynamic-subtests-prune-dynamics/0/journal.txt
new file mode 100644
index 00000000..aa8cef0c
--- /dev/null
+++ b/runner/json_tests_data/dynamic-subtests-prune-dynamics/0/journal.txt
@@ -0,0 +1,2 @@
+debug-log-checking
+exit:98 (0.130s)
diff --git a/runner/json_tests_data/dynamic-subtests-prune-dynamics/0/out.txt b/runner/json_tests_data/dynamic-subtests-prune-dynamics/0/out.txt
new file mode 100644
index 00000000..286da3f3
--- /dev/null
+++ b/runner/json_tests_data/dynamic-subtests-prune-dynamics/0/out.txt
@@ -0,0 +1,19 @@
+IGT-Version: 1.23-g9e957acd (x86_64) (Linux: 4.18.0-1-amd64 x86_64)
+Starting subtest: debug-log-checking
+Starting dynamic subtest: this-is-dynamic-1
+Stack trace:
+ #0 ../lib/igt_core.c:1607 __igt_fail_assert()
+ #1 ../runner/testdata/dynamic.c:11 __real_main3()
+ #2 ../runner/testdata/dynamic.c:3 main()
+ #3 ../csu/libc-start.c:342 __libc_start_main()
+ #4 [_start+0x2a]
+Dynamic subtest this-is-dynamic-1: FAIL (0.055s)
+Starting dynamic subtest: this-is-dynamic-2
+Stack trace:
+ #0 ../lib/igt_core.c:1607 __igt_fail_assert()
+ #1 ../runner/testdata/dynamic.c:5 __real_main3()
+ #2 ../runner/testdata/dynamic.c:3 main()
+ #3 ../csu/libc-start.c:342 __libc_start_main()
+ #4 [_start+0x2a]
+Dynamic subtest this-is-dynamic-2: FAIL (0.054s)
+Subtest debug-log-checking: FAIL (0.109s)
diff --git a/runner/json_tests_data/dynamic-subtests-prune-dynamics/1/dmesg.txt b/runner/json_tests_data/dynamic-subtests-prune-dynamics/1/dmesg.txt
new file mode 100644
index 00000000..d6e16a46
--- /dev/null
+++ b/runner/json_tests_data/dynamic-subtests-prune-dynamics/1/dmesg.txt
@@ -0,0 +1,5 @@
+6,1164,23426155304955,-;Console: switching to colour dummy device 80x25
+14,1165,23426155304968,-;[IGT] dynamic: executing
+14,1166,23426155308644,-;[IGT] dynamic: starting subtest empty-container
+14,1167,23426155308671,-;[IGT] dynamic: exiting, ret=77
+6,1168,23426155308822,-;Console: switching to colour frame buffer device 240x75
diff --git a/runner/json_tests_data/dynamic-subtests-prune-dynamics/1/err.txt b/runner/json_tests_data/dynamic-subtests-prune-dynamics/1/err.txt
new file mode 100644
index 00000000..6247e714
--- /dev/null
+++ b/runner/json_tests_data/dynamic-subtests-prune-dynamics/1/err.txt
@@ -0,0 +1,2 @@
+Starting subtest: empty-container
+Subtest empty-container: SKIP (0.000s)
diff --git a/runner/json_tests_data/dynamic-subtests-prune-dynamics/1/journal.txt b/runner/json_tests_data/dynamic-subtests-prune-dynamics/1/journal.txt
new file mode 100644
index 00000000..3e4ce5c4
--- /dev/null
+++ b/runner/json_tests_data/dynamic-subtests-prune-dynamics/1/journal.txt
@@ -0,0 +1,2 @@
+empty-container
+exit:77 (0.014s)
diff --git a/runner/json_tests_data/dynamic-subtests-prune-dynamics/1/out.txt b/runner/json_tests_data/dynamic-subtests-prune-dynamics/1/out.txt
new file mode 100644
index 00000000..704734dc
--- /dev/null
+++ b/runner/json_tests_data/dynamic-subtests-prune-dynamics/1/out.txt
@@ -0,0 +1,5 @@
+IGT-Version: 1.23-g9e957acd (x86_64) (Linux: 4.18.0-1-amd64 x86_64)
+Starting subtest: empty-container
+This should skip
+No dynamic tests executed.
+Subtest empty-container: SKIP (0.000s)
diff --git a/runner/json_tests_data/dynamic-subtests-prune-dynamics/2/dmesg.txt b/runner/json_tests_data/dynamic-subtests-prune-dynamics/2/dmesg.txt
new file mode 100644
index 00000000..046ef579
--- /dev/null
+++ b/runner/json_tests_data/dynamic-subtests-prune-dynamics/2/dmesg.txt
@@ -0,0 +1,11 @@
+6,1157,23426155175691,-;Console: switching to colour dummy device 80x25
+14,1158,23426155175708,-;[IGT] dynamic: executing
+14,1159,23426155184875,-;[IGT] dynamic: starting subtest normal
+6,1160,23426155184895,-;Dmesg output for normal
+6,1160,23426155184895,-;[IGT] dynamic: starting dynamic subtest normal-dynamic-subtest
+14,1159,23426155184875,-;[IGT] dynamic: starting subtest incomplete
+14,1160,23426155184895,-;[IGT] dynamic: starting dynamic subtest this-is-incomplete
+6,1160,23426155184895,-;Dmesg output for incomplete
+14,1161,23426155240164,-;[IGT] dynamic: starting subtest resume
+14,1162,23426155293846,-;[IGT] dynamic: exiting, ret=0
+6,1163,23426155294003,-;Console: switching to colour frame buffer device 240x75
diff --git a/runner/json_tests_data/dynamic-subtests-prune-dynamics/2/err.txt b/runner/json_tests_data/dynamic-subtests-prune-dynamics/2/err.txt
new file mode 100644
index 00000000..1eae6061
--- /dev/null
+++ b/runner/json_tests_data/dynamic-subtests-prune-dynamics/2/err.txt
@@ -0,0 +1,8 @@
+Starting subtest: normal
+Starting dynamic subtest: normal-dynamic-subtest
+Dynamic subtest normal-dynamic-subtest: SUCCESS (0.055s)
+Subtest normal: SUCCESS (0.100s)
+Starting subtest: incomplete
+Starting dynamic subtest: this-is-incomplete
+Starting subtest: resume
+Subtest resume: SUCCESS (0.109s)
diff --git a/runner/json_tests_data/dynamic-subtests-prune-dynamics/2/journal.txt b/runner/json_tests_data/dynamic-subtests-prune-dynamics/2/journal.txt
new file mode 100644
index 00000000..9469e227
--- /dev/null
+++ b/runner/json_tests_data/dynamic-subtests-prune-dynamics/2/journal.txt
@@ -0,0 +1,4 @@
+normal
+incomplete
+resume
+exit:0 (0.130s)
diff --git a/runner/json_tests_data/dynamic-subtests-prune-dynamics/2/out.txt b/runner/json_tests_data/dynamic-subtests-prune-dynamics/2/out.txt
new file mode 100644
index 00000000..3063844b
--- /dev/null
+++ b/runner/json_tests_data/dynamic-subtests-prune-dynamics/2/out.txt
@@ -0,0 +1,10 @@
+IGT-Version: 1.23-g9e957acd (x86_64) (Linux: 4.18.0-1-amd64 x86_64)
+Starting subtest: normal
+Starting dynamic subtest: normal-dynamic-subtest
+Dynamic subtest normal-dynamic-subtest: SUCCESS (0.055s)
+Subtest normal: SUCCESS (0.100s)
+Starting subtest: incomplete
+Starting dynamic subtest: this-is-incomplete
+This is some output
+Starting subtest: resume
+Subtest resume: SUCCESS (0.109s)
diff --git a/runner/json_tests_data/dynamic-subtests-prune-dynamics/README.txt b/runner/json_tests_data/dynamic-subtests-prune-dynamics/README.txt
new file mode 100644
index 00000000..3a63ab17
--- /dev/null
+++ b/runner/json_tests_data/dynamic-subtests-prune-dynamics/README.txt
@@ -0,0 +1,2 @@
+A test with dynamic subtests should generate separate subresults for
+the dynamic tests.
diff --git a/runner/json_tests_data/dynamic-subtests-prune-dynamics/endtime.txt b/runner/json_tests_data/dynamic-subtests-prune-dynamics/endtime.txt
new file mode 100644
index 00000000..5c7608b5
--- /dev/null
+++ b/runner/json_tests_data/dynamic-subtests-prune-dynamics/endtime.txt
@@ -0,0 +1 @@
+1560163492.410489
diff --git a/runner/json_tests_data/dynamic-subtests-prune-dynamics/joblist.txt b/runner/json_tests_data/dynamic-subtests-prune-dynamics/joblist.txt
new file mode 100644
index 00000000..4fdcc5f1
--- /dev/null
+++ b/runner/json_tests_data/dynamic-subtests-prune-dynamics/joblist.txt
@@ -0,0 +1,3 @@
+dynamic debug-log-checking
+dynamic empty-container
+dynamic normal,incomplete,resume
diff --git a/runner/json_tests_data/dynamic-subtests-prune-dynamics/metadata.txt b/runner/json_tests_data/dynamic-subtests-prune-dynamics/metadata.txt
new file mode 100644
index 00000000..8c77de01
--- /dev/null
+++ b/runner/json_tests_data/dynamic-subtests-prune-dynamics/metadata.txt
@@ -0,0 +1,12 @@
+abort_mask : 0
+name : dynamic-subtests
+dry_run : 0
+sync : 0
+log_level : 0
+overwrite : 0
+multiple_mode : 1
+inactivity_timeout : 0
+use_watchdog : 0
+piglit_style_dmesg : 0
+test_root : /path/does/not/exist
+results_path : /path/does/not/exist
diff --git a/runner/json_tests_data/dynamic-subtests-prune-dynamics/reference.json b/runner/json_tests_data/dynamic-subtests-prune-dynamics/reference.json
new file mode 100644
index 00000000..c013d282
--- /dev/null
+++ b/runner/json_tests_data/dynamic-subtests-prune-dynamics/reference.json
@@ -0,0 +1,135 @@
+{
+ "__type__":"TestrunResult",
+ "results_version":10,
+ "name":"dynamic-subtests",
+ "uname":"Linux hostname 4.18.0-1-amd64 #1 SMP Debian 4.18.6-1 (2018-09-06) x86_64",
+ "time_elapsed":{
+ "__type__":"TimeAttribute",
+ "start":1560163492.266377,
+ "end":1560163492.4104891
+ },
+ "tests":{
+ "igt@dynamic@debug-log-checking@this-is-dynamic-1":{
+ "out":"IGT-Version: 1.23-g9e957acd (x86_64) (Linux: 4.18.0-1-amd64 x86_64)\nStarting subtest: debug-log-checking\nStarting dynamic subtest: this-is-dynamic-1\nStack trace:\n #0 ..\/lib\/igt_core.c:1607 __igt_fail_assert()\n #1 ..\/runner\/testdata\/dynamic.c:11 __real_main3()\n #2 ..\/runner\/testdata\/dynamic.c:3 main()\n #3 ..\/csu\/libc-start.c:342 __libc_start_main()\n #4 [_start+0x2a]\nDynamic subtest this-is-dynamic-1: FAIL (0.055s)\n",
+ "igt-version":"IGT-Version: 1.23-g9e957acd (x86_64) (Linux: 4.18.0-1-amd64 x86_64)",
+ "result":"fail",
+ "time":{
+ "__type__":"TimeAttribute",
+ "start":0,
+ "end":0.055
+ },
+ "err":"Starting subtest: debug-log-checking\nStarting dynamic subtest: this-is-dynamic-1\n(dynamic:20904) CRITICAL: Test assertion failure function __real_main3, file ..\/runner\/testdata\/dynamic.c:8:\n(dynamic:20904) CRITICAL: Failed assertion: false\nDynamic subtest this-is-dynamic-1 failed.\n**** DEBUG ****\n(dynamic:20904) DEBUG: This print is from 1\n(dynamic:20904) CRITICAL: Test assertion failure function __real_main3, file ..\/runner\/testdata\/dynamic.c:8:\n(dynamic:20904) CRITICAL: Failed assertion: false\n(dynamic:20904) igt_core-INFO: Stack trace:\n(dynamic:20904) igt_core-INFO: #0 ..\/lib\/igt_core.c:1607 __igt_fail_assert()\n(dynamic:20904) igt_core-INFO: #1 ..\/runner\/testdata\/dynamic.c:11 __real_main3()\n(dynamic:20904) igt_core-INFO: #2 ..\/runner\/testdata\/dynamic.c:3 main()\n(dynamic:20904) igt_core-INFO: #3 ..\/csu\/libc-start.c:342 __libc_start_main()\n(dynamic:20904) igt_core-INFO: #4 [_start+0x2a]\n**** END ****\nDynamic subtest this-is-d
ynamic-1: FAIL (0.055s)\n",
+ "dmesg":"<6> [23426155.175691] Console: switching to colour dummy device 80x25\n<6> [23426155.175708] [IGT] dynamic: executing\n<6> [23426155.184875] [IGT] dynamic: starting subtest debug-log-checking\n<6> [23426155.184895] [IGT] dynamic: starting dynamic subtest this-is-dynamic-1\n"
+ },
+ "igt@dynamic@debug-log-checking@this-is-dynamic-2":{
+ "out":"Starting dynamic subtest: this-is-dynamic-2\nStack trace:\n #0 ..\/lib\/igt_core.c:1607 __igt_fail_assert()\n #1 ..\/runner\/testdata\/dynamic.c:5 __real_main3()\n #2 ..\/runner\/testdata\/dynamic.c:3 main()\n #3 ..\/csu\/libc-start.c:342 __libc_start_main()\n #4 [_start+0x2a]\nDynamic subtest this-is-dynamic-2: FAIL (0.054s)\nSubtest debug-log-checking: FAIL (0.109s)\n",
+ "igt-version":"IGT-Version: 1.23-g9e957acd (x86_64) (Linux: 4.18.0-1-amd64 x86_64)",
+ "result":"fail",
+ "time":{
+ "__type__":"TimeAttribute",
+ "start":0,
+ "end":0.054
+ },
+ "err":"Starting dynamic subtest: this-is-dynamic-2\n(dynamic:20904) CRITICAL: Test assertion failure function __real_main3, file ..\/runner\/testdata\/dynamic.c:13:\n(dynamic:20904) CRITICAL: Failed assertion: false\nDynamic subtest this-is-dynamic-2 failed.\n**** DEBUG ****\n(dynamic:20904) DEBUG: This print is from 2\n(dynamic:20904) CRITICAL: Test assertion failure function __real_main3, file ..\/runner\/testdata\/dynamic.c:13:\n(dynamic:20904) CRITICAL: Failed assertion: false\n(dynamic:20904) igt_core-INFO: Stack trace:\n(dynamic:20904) igt_core-INFO: #0 ..\/lib\/igt_core.c:1607 __igt_fail_assert()\n(dynamic:20904) igt_core-INFO: #1 ..\/runner\/testdata\/dynamic.c:5 __real_main3()\n(dynamic:20904) igt_core-INFO: #2 ..\/runner\/testdata\/dynamic.c:3 main()\n(dynamic:20904) igt_core-INFO: #3 ..\/csu\/libc-start.c:342 __libc_start_main()\n(dynamic:20904) igt_core-INFO: #4 [_start+0x2a]\n**** END ****\nDynamic subtest this-is-dynamic-2: FAIL (0.054s)\nSubtest debu
g-log-checking failed.\nNo log.\nSubtest debug-log-checking: FAIL (0.109s)\n",
+ "dmesg":"<6> [23426155.240164] [IGT] dynamic: starting dynamic subtest this-is-dynamic-2\n<6> [23426155.293846] [IGT] dynamic: exiting, ret=98\n<6> [23426155.294003] Console: switching to colour frame buffer device 240x75\n"
+ },
+ "igt@dynamic@empty-container":{
+ "out":"IGT-Version: 1.23-g9e957acd (x86_64) (Linux: 4.18.0-1-amd64 x86_64)\nStarting subtest: empty-container\nThis should skip\nNo dynamic tests executed.\nSubtest empty-container: SKIP (0.000s)\n",
+ "igt-version":"IGT-Version: 1.23-g9e957acd (x86_64) (Linux: 4.18.0-1-amd64 x86_64)",
+ "result":"skip",
+ "time":{
+ "__type__":"TimeAttribute",
+ "start":0,
+ "end":0
+ },
+ "err":"Starting subtest: empty-container\nSubtest empty-container: SKIP (0.000s)\n",
+ "dmesg":"<6> [23426155.304955] Console: switching to colour dummy device 80x25\n<6> [23426155.304968] [IGT] dynamic: executing\n<6> [23426155.308644] [IGT] dynamic: starting subtest empty-container\n<6> [23426155.308671] [IGT] dynamic: exiting, ret=77\n<6> [23426155.308822] Console: switching to colour frame buffer device 240x75\n"
+ },
+ "igt@dynamic@normal@normal-dynamic-subtest":{
+ "out":"IGT-Version: 1.23-g9e957acd (x86_64) (Linux: 4.18.0-1-amd64 x86_64)\nStarting subtest: normal\nStarting dynamic subtest: normal-dynamic-subtest\nDynamic subtest normal-dynamic-subtest: SUCCESS (0.055s)\nSubtest normal: SUCCESS (0.100s)\n",
+ "igt-version":"IGT-Version: 1.23-g9e957acd (x86_64) (Linux: 4.18.0-1-amd64 x86_64)",
+ "result":"pass",
+ "time":{
+ "__type__":"TimeAttribute",
+ "start":0,
+ "end":0.055
+ },
+ "err":"Starting subtest: normal\nStarting dynamic subtest: normal-dynamic-subtest\nDynamic subtest normal-dynamic-subtest: SUCCESS (0.055s)\nSubtest normal: SUCCESS (0.100s)\n",
+ "dmesg":"<6> [23426155.175691] Console: switching to colour dummy device 80x25\n<6> [23426155.175708] [IGT] dynamic: executing\n<6> [23426155.184875] [IGT] dynamic: starting subtest normal\n<6> [23426155.184895] Dmesg output for normal\n<6> [23426155.184895] [IGT] dynamic: starting dynamic subtest normal-dynamic-subtest\n"
+ },
+ "igt@dynamic@incomplete@this-is-incomplete":{
+ "out":"Starting subtest: incomplete\nStarting dynamic subtest: this-is-incomplete\nThis is some output\n",
+ "igt-version":"IGT-Version: 1.23-g9e957acd (x86_64) (Linux: 4.18.0-1-amd64 x86_64)",
+ "result":"incomplete",
+ "time":{
+ "__type__":"TimeAttribute",
+ "start":0,
+ "end":0
+ },
+ "err":"Starting subtest: incomplete\nStarting dynamic subtest: this-is-incomplete\n",
+ "dmesg":"<6> [23426155.184875] [IGT] dynamic: starting subtest incomplete\n<6> [23426155.184895] [IGT] dynamic: starting dynamic subtest this-is-incomplete\n<6> [23426155.184895] Dmesg output for incomplete\n"
+ },
+ "igt@dynamic@resume":{
+ "out":"This is some output\nStarting subtest: resume\nSubtest resume: SUCCESS (0.109s)\n",
+ "igt-version":"IGT-Version: 1.23-g9e957acd (x86_64) (Linux: 4.18.0-1-amd64 x86_64)",
+ "result":"pass",
+ "time":{
+ "__type__":"TimeAttribute",
+ "start":0,
+ "end":0.109
+ },
+ "err":"Starting subtest: resume\nSubtest resume: SUCCESS (0.109s)\n",
+ "dmesg":"<6> [23426155.240164] [IGT] dynamic: starting subtest resume\n<6> [23426155.293846] [IGT] dynamic: exiting, ret=0\n<6> [23426155.294003] Console: switching to colour frame buffer device 240x75\n"
+ }
+ },
+ "totals":{
+ "":{
+ "crash":0,
+ "pass":2,
+ "dmesg-fail":0,
+ "dmesg-warn":0,
+ "skip":1,
+ "incomplete":1,
+ "abort":0,
+ "timeout":0,
+ "notrun":0,
+ "fail":2,
+ "warn":0
+ },
+ "root":{
+ "crash":0,
+ "pass":2,
+ "dmesg-fail":0,
+ "dmesg-warn":0,
+ "skip":1,
+ "incomplete":1,
+ "abort":0,
+ "timeout":0,
+ "notrun":0,
+ "fail":2,
+ "warn":0
+ },
+ "igt@dynamic":{
+ "crash":0,
+ "pass":2,
+ "dmesg-fail":0,
+ "dmesg-warn":0,
+ "skip":1,
+ "incomplete":1,
+ "abort":0,
+ "timeout":0,
+ "notrun":0,
+ "fail":2,
+ "warn":0
+ }
+ },
+ "runtimes":{
+ "igt@dynamic":{
+ "time":{
+ "__type__":"TimeAttribute",
+ "start":0,
+ "end":0.27400000000000002
+ }
+ }
+ }
+}
diff --git a/runner/json_tests_data/dynamic-subtests-prune-dynamics/starttime.txt b/runner/json_tests_data/dynamic-subtests-prune-dynamics/starttime.txt
new file mode 100644
index 00000000..b30b32ee
--- /dev/null
+++ b/runner/json_tests_data/dynamic-subtests-prune-dynamics/starttime.txt
@@ -0,0 +1 @@
+1560163492.266377
diff --git a/runner/json_tests_data/dynamic-subtests-prune-dynamics/uname.txt b/runner/json_tests_data/dynamic-subtests-prune-dynamics/uname.txt
new file mode 100644
index 00000000..a7aef6f7
--- /dev/null
+++ b/runner/json_tests_data/dynamic-subtests-prune-dynamics/uname.txt
@@ -0,0 +1 @@
+Linux hostname 4.18.0-1-amd64 #1 SMP Debian 4.18.6-1 (2018-09-06) x86_64
--
2.20.1
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 6+ messages in thread* [igt-dev] [PATCH i-g-t 3/3] runner: Add json unit test for --prune-dynamic-results
2020-04-22 11:19 [igt-dev] [PATCH i-g-t 1/3] runner: Add --prune-dynamic-results Petri Latvala
2020-04-22 11:19 ` [igt-dev] [PATCH i-g-t 2/3] TO BE SQUASHED OVER: Copy dynamic-subtests json test Petri Latvala
@ 2020-04-22 11:19 ` Petri Latvala
2020-04-22 11:47 ` [igt-dev] ✗ Fi.CI.BUILD: failure for series starting with [i-g-t,1/3] runner: Add --prune-dynamic-results Patchwork
2020-04-27 8:43 ` [igt-dev] ✗ Fi.CI.BUILD: failure for series starting with [i-g-t,1/3] runner: Add --prune-dynamic-results (rev2) Patchwork
3 siblings, 0 replies; 6+ messages in thread
From: Petri Latvala @ 2020-04-22 11:19 UTC (permalink / raw)
To: igt-dev; +Cc: Petri Latvala
Signed-off-by: Petri Latvala <petri.latvala@intel.com>
Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
---
.../README.txt | 4 +--
.../metadata.txt | 3 +-
.../reference.json | 36 +++++++------------
runner/runner_json_tests.c | 1 +
4 files changed, 17 insertions(+), 27 deletions(-)
diff --git a/runner/json_tests_data/dynamic-subtests-prune-dynamics/README.txt b/runner/json_tests_data/dynamic-subtests-prune-dynamics/README.txt
index 3a63ab17..fcc12410 100644
--- a/runner/json_tests_data/dynamic-subtests-prune-dynamics/README.txt
+++ b/runner/json_tests_data/dynamic-subtests-prune-dynamics/README.txt
@@ -1,2 +1,2 @@
-A test with dynamic subtests should generate separate subresults for
-the dynamic tests.
+A test with dynamic subtests should only generate the subtest results
+when --prune-dynamic-results is used.
diff --git a/runner/json_tests_data/dynamic-subtests-prune-dynamics/metadata.txt b/runner/json_tests_data/dynamic-subtests-prune-dynamics/metadata.txt
index 8c77de01..7a5a6717 100644
--- a/runner/json_tests_data/dynamic-subtests-prune-dynamics/metadata.txt
+++ b/runner/json_tests_data/dynamic-subtests-prune-dynamics/metadata.txt
@@ -1,5 +1,5 @@
abort_mask : 0
-name : dynamic-subtests
+name : dynamic-subtests-prune-dynamics
dry_run : 0
sync : 0
log_level : 0
@@ -8,5 +8,6 @@ multiple_mode : 1
inactivity_timeout : 0
use_watchdog : 0
piglit_style_dmesg : 0
+prune_dynamics : 1
test_root : /path/does/not/exist
results_path : /path/does/not/exist
diff --git a/runner/json_tests_data/dynamic-subtests-prune-dynamics/reference.json b/runner/json_tests_data/dynamic-subtests-prune-dynamics/reference.json
index c013d282..21e38be2 100644
--- a/runner/json_tests_data/dynamic-subtests-prune-dynamics/reference.json
+++ b/runner/json_tests_data/dynamic-subtests-prune-dynamics/reference.json
@@ -1,7 +1,7 @@
{
"__type__":"TestrunResult",
"results_version":10,
- "name":"dynamic-subtests",
+ "name":"dynamic-subtests-prune-dynamics",
"uname":"Linux hostname 4.18.0-1-amd64 #1 SMP Debian 4.18.6-1 (2018-09-06) x86_64",
"time_elapsed":{
"__type__":"TimeAttribute",
@@ -9,29 +9,17 @@
"end":1560163492.4104891
},
"tests":{
- "igt@dynamic@debug-log-checking@this-is-dynamic-1":{
- "out":"IGT-Version: 1.23-g9e957acd (x86_64) (Linux: 4.18.0-1-amd64 x86_64)\nStarting subtest: debug-log-checking\nStarting dynamic subtest: this-is-dynamic-1\nStack trace:\n #0 ..\/lib\/igt_core.c:1607 __igt_fail_assert()\n #1 ..\/runner\/testdata\/dynamic.c:11 __real_main3()\n #2 ..\/runner\/testdata\/dynamic.c:3 main()\n #3 ..\/csu\/libc-start.c:342 __libc_start_main()\n #4 [_start+0x2a]\nDynamic subtest this-is-dynamic-1: FAIL (0.055s)\n",
+ "igt@dynamic@debug-log-checking":{
+ "out":"IGT-Version: 1.23-g9e957acd (x86_64) (Linux: 4.18.0-1-amd64 x86_64)\nStarting subtest: debug-log-checking\nStarting dynamic subtest: this-is-dynamic-1\nStack trace:\n #0 ..\/lib\/igt_core.c:1607 __igt_fail_assert()\n #1 ..\/runner\/testdata\/dynamic.c:11 __real_main3()\n #2 ..\/runner\/testdata\/dynamic.c:3 main()\n #3 ..\/csu\/libc-start.c:342 __libc_start_main()\n #4 [_start+0x2a]\nDynamic subtest this-is-dynamic-1: FAIL (0.055s)\nStarting dynamic subtest: this-is-dynamic-2\nStack trace:\n #0 ..\/lib\/igt_core.c:1607 __igt_fail_assert()\n #1 ..\/runner\/testdata\/dynamic.c:5 __real_main3()\n #2 ..\/runner\/testdata\/dynamic.c:3 main()\n #3 ..\/csu\/libc-start.c:342 __libc_start_main()\n #4 [_start+0x2a]\nDynamic subtest this-is-dynamic-2: FAIL (0.054s)\nSubtest debug-log-checking: FAIL (0.109s)\n",
"igt-version":"IGT-Version: 1.23-g9e957acd (x86_64) (Linux: 4.18.0-1-amd64 x86_64)",
"result":"fail",
"time":{
"__type__":"TimeAttribute",
"start":0,
- "end":0.055
- },
- "err":"Starting subtest: debug-log-checking\nStarting dynamic subtest: this-is-dynamic-1\n(dynamic:20904) CRITICAL: Test assertion failure function __real_main3, file ..\/runner\/testdata\/dynamic.c:8:\n(dynamic:20904) CRITICAL: Failed assertion: false\nDynamic subtest this-is-dynamic-1 failed.\n**** DEBUG ****\n(dynamic:20904) DEBUG: This print is from 1\n(dynamic:20904) CRITICAL: Test assertion failure function __real_main3, file ..\/runner\/testdata\/dynamic.c:8:\n(dynamic:20904) CRITICAL: Failed assertion: false\n(dynamic:20904) igt_core-INFO: Stack trace:\n(dynamic:20904) igt_core-INFO: #0 ..\/lib\/igt_core.c:1607 __igt_fail_assert()\n(dynamic:20904) igt_core-INFO: #1 ..\/runner\/testdata\/dynamic.c:11 __real_main3()\n(dynamic:20904) igt_core-INFO: #2 ..\/runner\/testdata\/dynamic.c:3 main()\n(dynamic:20904) igt_core-INFO: #3 ..\/csu\/libc-start.c:342 __libc_start_main()\n(dynamic:20904) igt_core-INFO: #4 [_start+0x2a]\n**** END ****\nDynamic subtest this-is-d
ynamic-1: FAIL (0.055s)\n",
- "dmesg":"<6> [23426155.175691] Console: switching to colour dummy device 80x25\n<6> [23426155.175708] [IGT] dynamic: executing\n<6> [23426155.184875] [IGT] dynamic: starting subtest debug-log-checking\n<6> [23426155.184895] [IGT] dynamic: starting dynamic subtest this-is-dynamic-1\n"
- },
- "igt@dynamic@debug-log-checking@this-is-dynamic-2":{
- "out":"Starting dynamic subtest: this-is-dynamic-2\nStack trace:\n #0 ..\/lib\/igt_core.c:1607 __igt_fail_assert()\n #1 ..\/runner\/testdata\/dynamic.c:5 __real_main3()\n #2 ..\/runner\/testdata\/dynamic.c:3 main()\n #3 ..\/csu\/libc-start.c:342 __libc_start_main()\n #4 [_start+0x2a]\nDynamic subtest this-is-dynamic-2: FAIL (0.054s)\nSubtest debug-log-checking: FAIL (0.109s)\n",
- "igt-version":"IGT-Version: 1.23-g9e957acd (x86_64) (Linux: 4.18.0-1-amd64 x86_64)",
- "result":"fail",
- "time":{
- "__type__":"TimeAttribute",
- "start":0,
- "end":0.054
+ "end":0.109
},
- "err":"Starting dynamic subtest: this-is-dynamic-2\n(dynamic:20904) CRITICAL: Test assertion failure function __real_main3, file ..\/runner\/testdata\/dynamic.c:13:\n(dynamic:20904) CRITICAL: Failed assertion: false\nDynamic subtest this-is-dynamic-2 failed.\n**** DEBUG ****\n(dynamic:20904) DEBUG: This print is from 2\n(dynamic:20904) CRITICAL: Test assertion failure function __real_main3, file ..\/runner\/testdata\/dynamic.c:13:\n(dynamic:20904) CRITICAL: Failed assertion: false\n(dynamic:20904) igt_core-INFO: Stack trace:\n(dynamic:20904) igt_core-INFO: #0 ..\/lib\/igt_core.c:1607 __igt_fail_assert()\n(dynamic:20904) igt_core-INFO: #1 ..\/runner\/testdata\/dynamic.c:5 __real_main3()\n(dynamic:20904) igt_core-INFO: #2 ..\/runner\/testdata\/dynamic.c:3 main()\n(dynamic:20904) igt_core-INFO: #3 ..\/csu\/libc-start.c:342 __libc_start_main()\n(dynamic:20904) igt_core-INFO: #4 [_start+0x2a]\n**** END ****\nDynamic subtest this-is-dynamic-2: FAIL (0.054s)\nSubtest debu
g-log-checking failed.\nNo log.\nSubtest debug-log-checking: FAIL (0.109s)\n",
- "dmesg":"<6> [23426155.240164] [IGT] dynamic: starting dynamic subtest this-is-dynamic-2\n<6> [23426155.293846] [IGT] dynamic: exiting, ret=98\n<6> [23426155.294003] Console: switching to colour frame buffer device 240x75\n"
+ "err":"Starting subtest: debug-log-checking\nStarting dynamic subtest: this-is-dynamic-1\n(dynamic:20904) CRITICAL: Test assertion failure function __real_main3, file ..\/runner\/testdata\/dynamic.c:8:\n(dynamic:20904) CRITICAL: Failed assertion: false\nDynamic subtest this-is-dynamic-1 failed.\n**** DEBUG ****\n(dynamic:20904) DEBUG: This print is from 1\n(dynamic:20904) CRITICAL: Test assertion failure function __real_main3, file ..\/runner\/testdata\/dynamic.c:8:\n(dynamic:20904) CRITICAL: Failed assertion: false\n(dynamic:20904) igt_core-INFO: Stack trace:\n(dynamic:20904) igt_core-INFO: #0 ..\/lib\/igt_core.c:1607 __igt_fail_assert()\n(dynamic:20904) igt_core-INFO: #1 ..\/runner\/testdata\/dynamic.c:11 __real_main3()\n(dynamic:20904) igt_core-INFO: #2 ..\/runner\/testdata\/dynamic.c:3 main()\n(dynamic:20904) igt_core-INFO: #3 ..\/csu\/libc-start.c:342 __libc_start_main()\n(dynamic:20904) igt_core-INFO: #4 [_start+0x2a]\n**** END ****\nDynamic subtest this-is-d
ynamic-1: FAIL (0.055s)\nStarting dynamic subtest: this-is-dynamic-2\n(dynamic:20904) CRITICAL: Test assertion failure function __real_main3, file ..\/runner\/testdata\/dynamic.c:13:\n(dynamic:20904) CRITICAL: Failed assertion: false\nDynamic subtest this-is-dynamic-2 failed.\n**** DEBUG ****\n(dynamic:20904) DEBUG: This print is from 2\n(dynamic:20904) CRITICAL: Test assertion failure function __real_main3, file ..\/runner\/testdata\/dynamic.c:13:\n(dynamic:20904) CRITICAL: Failed assertion: false\n(dynamic:20904) igt_core-INFO: Stack trace:\n(dynamic:20904) igt_core-INFO: #0 ..\/lib\/igt_core.c:1607 __igt_fail_assert()\n(dynamic:20904) igt_core-INFO: #1 ..\/runner\/testdata\/dynamic.c:5 __real_main3()\n(dynamic:20904) igt_core-INFO: #2 ..\/runner\/testdata\/dynamic.c:3 main()\n(dynamic:20904) igt_core-INFO: #3 ..\/csu\/libc-start.c:342 __libc_start_main()\n(dynamic:20904) igt_core-INFO: #4 [_start+0x2a]\n**** END ****\nDynamic subtest this-is-dynamic-2: FAIL (0.054s)\n
Subtest debug-log-checking failed.\nNo log.\nSubtest debug-log-checking: FAIL (0.109s)\n",
+ "dmesg":"<6> [23426155.175691] Console: switching to colour dummy device 80x25\n<6> [23426155.175708] [IGT] dynamic: executing\n<6> [23426155.184875] [IGT] dynamic: starting subtest debug-log-checking\n<6> [23426155.184895] [IGT] dynamic: starting dynamic subtest this-is-dynamic-1\n<6> [23426155.240164] [IGT] dynamic: starting dynamic subtest this-is-dynamic-2\n<6> [23426155.293846] [IGT] dynamic: exiting, ret=98\n<6> [23426155.294003] Console: switching to colour frame buffer device 240x75\n"
},
"igt@dynamic@empty-container":{
"out":"IGT-Version: 1.23-g9e957acd (x86_64) (Linux: 4.18.0-1-amd64 x86_64)\nStarting subtest: empty-container\nThis should skip\nNo dynamic tests executed.\nSubtest empty-container: SKIP (0.000s)\n",
@@ -45,19 +33,19 @@
"err":"Starting subtest: empty-container\nSubtest empty-container: SKIP (0.000s)\n",
"dmesg":"<6> [23426155.304955] Console: switching to colour dummy device 80x25\n<6> [23426155.304968] [IGT] dynamic: executing\n<6> [23426155.308644] [IGT] dynamic: starting subtest empty-container\n<6> [23426155.308671] [IGT] dynamic: exiting, ret=77\n<6> [23426155.308822] Console: switching to colour frame buffer device 240x75\n"
},
- "igt@dynamic@normal@normal-dynamic-subtest":{
+ "igt@dynamic@normal":{
"out":"IGT-Version: 1.23-g9e957acd (x86_64) (Linux: 4.18.0-1-amd64 x86_64)\nStarting subtest: normal\nStarting dynamic subtest: normal-dynamic-subtest\nDynamic subtest normal-dynamic-subtest: SUCCESS (0.055s)\nSubtest normal: SUCCESS (0.100s)\n",
"igt-version":"IGT-Version: 1.23-g9e957acd (x86_64) (Linux: 4.18.0-1-amd64 x86_64)",
"result":"pass",
"time":{
"__type__":"TimeAttribute",
"start":0,
- "end":0.055
+ "end":0.100
},
"err":"Starting subtest: normal\nStarting dynamic subtest: normal-dynamic-subtest\nDynamic subtest normal-dynamic-subtest: SUCCESS (0.055s)\nSubtest normal: SUCCESS (0.100s)\n",
"dmesg":"<6> [23426155.175691] Console: switching to colour dummy device 80x25\n<6> [23426155.175708] [IGT] dynamic: executing\n<6> [23426155.184875] [IGT] dynamic: starting subtest normal\n<6> [23426155.184895] Dmesg output for normal\n<6> [23426155.184895] [IGT] dynamic: starting dynamic subtest normal-dynamic-subtest\n"
},
- "igt@dynamic@incomplete@this-is-incomplete":{
+ "igt@dynamic@incomplete":{
"out":"Starting subtest: incomplete\nStarting dynamic subtest: this-is-incomplete\nThis is some output\n",
"igt-version":"IGT-Version: 1.23-g9e957acd (x86_64) (Linux: 4.18.0-1-amd64 x86_64)",
"result":"incomplete",
@@ -93,7 +81,7 @@
"abort":0,
"timeout":0,
"notrun":0,
- "fail":2,
+ "fail":1,
"warn":0
},
"root":{
@@ -106,7 +94,7 @@
"abort":0,
"timeout":0,
"notrun":0,
- "fail":2,
+ "fail":1,
"warn":0
},
"igt@dynamic":{
@@ -119,7 +107,7 @@
"abort":0,
"timeout":0,
"notrun":0,
- "fail":2,
+ "fail":1,
"warn":0
}
},
diff --git a/runner/runner_json_tests.c b/runner/runner_json_tests.c
index a7a1e8de..29996ab5 100644
--- a/runner/runner_json_tests.c
+++ b/runner/runner_json_tests.c
@@ -163,6 +163,7 @@ static const char *dirnames[] = {
"dmesg-warn-level-piglit-style",
"dmesg-warn-level-one-piglit-style",
"dynamic-subtests",
+ "dynamic-subtests-prune-dynamics",
"dynamic-subtest-name-in-multiple-subtests",
"unprintable-characters",
"empty-result-files",
--
2.20.1
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply related [flat|nested] 6+ messages in thread* [igt-dev] ✗ Fi.CI.BUILD: failure for series starting with [i-g-t,1/3] runner: Add --prune-dynamic-results
2020-04-22 11:19 [igt-dev] [PATCH i-g-t 1/3] runner: Add --prune-dynamic-results Petri Latvala
2020-04-22 11:19 ` [igt-dev] [PATCH i-g-t 2/3] TO BE SQUASHED OVER: Copy dynamic-subtests json test Petri Latvala
2020-04-22 11:19 ` [igt-dev] [PATCH i-g-t 3/3] runner: Add json unit test for --prune-dynamic-results Petri Latvala
@ 2020-04-22 11:47 ` Patchwork
2020-04-22 13:07 ` Petri Latvala
2020-04-27 8:43 ` [igt-dev] ✗ Fi.CI.BUILD: failure for series starting with [i-g-t,1/3] runner: Add --prune-dynamic-results (rev2) Patchwork
3 siblings, 1 reply; 6+ messages in thread
From: Patchwork @ 2020-04-22 11:47 UTC (permalink / raw)
To: Petri Latvala; +Cc: igt-dev
== Series Details ==
Series: series starting with [i-g-t,1/3] runner: Add --prune-dynamic-results
URL : https://patchwork.freedesktop.org/series/76330/
State : failure
== Summary ==
Applying: runner: Add --prune-dynamic-results
Applying: TO BE SQUASHED OVER: Copy dynamic-subtests json test
Patch failed at 0002 TO BE SQUASHED OVER: Copy dynamic-subtests json test
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [igt-dev] ✗ Fi.CI.BUILD: failure for series starting with [i-g-t,1/3] runner: Add --prune-dynamic-results
2020-04-22 11:47 ` [igt-dev] ✗ Fi.CI.BUILD: failure for series starting with [i-g-t,1/3] runner: Add --prune-dynamic-results Patchwork
@ 2020-04-22 13:07 ` Petri Latvala
0 siblings, 0 replies; 6+ messages in thread
From: Petri Latvala @ 2020-04-22 13:07 UTC (permalink / raw)
To: igt-dev
On Wed, Apr 22, 2020 at 11:47:58AM +0000, Patchwork wrote:
> == Series Details ==
>
> Series: series starting with [i-g-t,1/3] runner: Add --prune-dynamic-results
> URL : https://patchwork.freedesktop.org/series/76330/
> State : failure
>
> == Summary ==
>
> Applying: runner: Add --prune-dynamic-results
> Applying: TO BE SQUASHED OVER: Copy dynamic-subtests json test
> Patch failed at 0002 TO BE SQUASHED OVER: Copy dynamic-subtests json test
> When you have resolved this problem, run "git am --continue".
> If you prefer to skip this patch, run "git am --skip" instead.
> To restore the original branch and stop patching, run "git am --abort".
For the record, this error is because patchwork has a limit of 30k characters per line...
--
Petri Latvala
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 6+ messages in thread
* [igt-dev] ✗ Fi.CI.BUILD: failure for series starting with [i-g-t,1/3] runner: Add --prune-dynamic-results (rev2)
2020-04-22 11:19 [igt-dev] [PATCH i-g-t 1/3] runner: Add --prune-dynamic-results Petri Latvala
` (2 preceding siblings ...)
2020-04-22 11:47 ` [igt-dev] ✗ Fi.CI.BUILD: failure for series starting with [i-g-t,1/3] runner: Add --prune-dynamic-results Patchwork
@ 2020-04-27 8:43 ` Patchwork
3 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2020-04-27 8:43 UTC (permalink / raw)
To: Petri Latvala; +Cc: igt-dev
== Series Details ==
Series: series starting with [i-g-t,1/3] runner: Add --prune-dynamic-results (rev2)
URL : https://patchwork.freedesktop.org/series/76330/
State : failure
== Summary ==
Applying: runner: Add --prune-dynamic-results
Applying: TO BE SQUASHED OVER: Copy dynamic-subtests json test
Patch failed at 0002 TO BE SQUASHED OVER: Copy dynamic-subtests json test
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2020-04-27 8:43 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-04-22 11:19 [igt-dev] [PATCH i-g-t 1/3] runner: Add --prune-dynamic-results Petri Latvala
2020-04-22 11:19 ` [igt-dev] [PATCH i-g-t 2/3] TO BE SQUASHED OVER: Copy dynamic-subtests json test Petri Latvala
2020-04-22 11:19 ` [igt-dev] [PATCH i-g-t 3/3] runner: Add json unit test for --prune-dynamic-results Petri Latvala
2020-04-22 11:47 ` [igt-dev] ✗ Fi.CI.BUILD: failure for series starting with [i-g-t,1/3] runner: Add --prune-dynamic-results Patchwork
2020-04-22 13:07 ` Petri Latvala
2020-04-27 8:43 ` [igt-dev] ✗ Fi.CI.BUILD: failure for series starting with [i-g-t,1/3] runner: Add --prune-dynamic-results (rev2) Patchwork
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox