diff options
author | Klaus Aehlig <klaus.aehlig@huawei.com> | 2024-07-10 17:25:23 +0200 |
---|---|---|
committer | Klaus Aehlig <klaus.aehlig@huawei.com> | 2024-07-12 09:58:33 +0200 |
commit | befb472b1b9650d485f46ae54227caea8bf81cdd (patch) | |
tree | a73d61651460419da871053e7b70d3f9206ea85b /CC/test | |
parent | 4f60c5b43a7b33052e62caa78a7b705b3057028b (diff) | |
download | rules-cc-befb472b1b9650d485f46ae54227caea8bf81cdd.tar.gz |
Tests: also record `pwd`
... as test meta data. Tests are executed in an unspecified directory,
assuming pass or fail is independent of the location where the test
is run. While this generally is true, test logs often contain the
working directory. So, in order to more easily compare different
execution orders of a potential race condition, it can be desirable
to compare logs "up to the execution directory". This, however,
requires that this directory is recored in the first place. Do so.
For consistency of the output format, also have a (fixed) artifact
pwd in the summary report.
Diffstat (limited to 'CC/test')
-rw-r--r-- | CC/test/EXPRESSIONS | 14 | ||||
-rw-r--r-- | CC/test/RULES | 1 | ||||
-rwxr-xr-x | CC/test/runner | 2 |
3 files changed, 15 insertions, 2 deletions
diff --git a/CC/test/EXPRESSIONS b/CC/test/EXPRESSIONS index b0a7f2b..1646dd7 100644 --- a/CC/test/EXPRESSIONS +++ b/CC/test/EXPRESSIONS @@ -165,7 +165,13 @@ [ [ "test-results" , { "type": "ACTION" , "outs": - ["result", "stdout", "stderr", "time-start", "time-stop"] + [ "result" + , "stdout" + , "stderr" + , "time-start" + , "time-stop" + , "pwd" + ] , "inputs": {"type": "var", "name": "test input"} , "cmd": ["./runner"] , "env": @@ -291,7 +297,11 @@ , [ "artifacts" , { "type": "map_union" , "$1": - [ {"type": "var", "name": "summary"} + [ { "type": "singleton_map" + , "key": "pwd" + , "value": {"type": "BLOB", "data": "/summary"} + } + , {"type": "var", "name": "summary"} , { "type": "singleton_map" , "key": "work" , "value": diff --git a/CC/test/RULES b/CC/test/RULES index 7444551..e23359e 100644 --- a/CC/test/RULES +++ b/CC/test/RULES @@ -143,6 +143,7 @@ , " the respective file descriptor" , "time-start/time-stop: The time (decimally coded) in seconds since the" , " epoch when the test invocation started and ended." + , "pwd: the directory in which the test was carried out" ] , "runfiles_doc": [ "A tree consisting of the artifacts staged at the name of the test." diff --git a/CC/test/runner b/CC/test/runner index 45a1bee..4984b17 100755 --- a/CC/test/runner +++ b/CC/test/runner @@ -36,6 +36,8 @@ def dump_results() -> None: f.write("%s\n" % (stdout, )) with open("stderr", "w") as f: f.write("%s\n" % (stderr, )) + with open("pwd", "w") as f: + f.write("%s\n" % (os.getcwd(), )) dump_results() |