diff options
author | Brendan Abolivier <babolivier@matrix.org> | 2019-10-18 14:52:57 +0100 |
---|---|---|
committer | Brendan Abolivier <babolivier@matrix.org> | 2019-10-18 14:52:57 +0100 |
commit | c3c1add9f30102b0c2b2f47abcd64fe705de7c2d (patch) | |
tree | ef7d165a887d4546dbc33f5f36ddcb9a9b6429a1 /.buildkite | |
parent | Add workers to buildkite (diff) | |
download | synapse-c3c1add9f30102b0c2b2f47abcd64fe705de7c2d.tar.xz |
Add TAP formatting script
Diffstat (limited to '.buildkite')
-rw-r--r-- | .buildkite/format_tap.py | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/.buildkite/format_tap.py b/.buildkite/format_tap.py new file mode 100644 index 0000000000..f153ffb661 --- /dev/null +++ b/.buildkite/format_tap.py @@ -0,0 +1,48 @@ +# -*- coding: utf-8 -*- +# Copyright 2019 The Matrix.org Foundation C.I.C. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import sys +from tap.parser import Parser +from tap.line import Result, Unknown, Diagnostic + +out = ["### TAP Output for " + sys.argv[2]] + +p = Parser() + +in_error = False + +for line in p.parse_file(sys.argv[1]): + if isinstance(line, Result): + if in_error: + out.append("") + out.append("</pre></code></details>") + out.append("") + out.append("----") + out.append("") + in_error = False + + if not line.ok and not line.todo: + in_error = True + + out.append("FAILURE Test #%d: ``%s``" % (line.number, line.description)) + out.append("") + out.append("<details><summary>Show log</summary><code><pre>") + + elif isinstance(line, Diagnostic) and in_error: + out.append(line.text) + +if out: + for line in out[:-3]: + print(line) \ No newline at end of file |