mirror of
https://github.com/element-hq/synapse
synced 2024-08-20 22:30:21 +00:00
Since github always scrolls to the bottom of any test output, let's put the failed tests last and hide any successful packages.
91 lines
3.3 KiB
Text
91 lines
3.3 KiB
Text
{{- /*gotype: github.com/haveyoudebuggedit/gotestfmt/parser.Package*/ -}}
|
|
{{- /*
|
|
This template contains the format for an individual package. GitHub actions does not currently support nested groups so
|
|
we are creating a stylized header for each package.
|
|
|
|
This template is based on https://github.com/haveyoudebuggedit/gotestfmt/blob/f179b0e462a9dcf7101515d87eec4e4d7e58b92a/.gotestfmt/github/package.gotpl
|
|
which is under the Unlicense licence.
|
|
*/ -}}
|
|
{{- $settings := .Settings -}}
|
|
{{- if and (or (not $settings.HideSuccessfulPackages) (ne .Result "PASS")) (or (not $settings.HideEmptyPackages) (ne .Result "SKIP") (ne (len .TestCases) 0)) -}}
|
|
{{- if eq .Result "PASS" -}}
|
|
{{ "\033" }}[0;32m
|
|
{{- else if eq .Result "SKIP" -}}
|
|
{{ "\033" }}[0;33m
|
|
{{- else -}}
|
|
{{ "\033" }}[0;31m
|
|
{{- end -}}
|
|
📦 {{ .Name }}{{- "\033" }}[0m
|
|
{{- with .Coverage -}}
|
|
{{- "\033" -}}[0;37m ({{ . }}% coverage){{- "\033" -}}[0m
|
|
{{- end -}}
|
|
{{- "\n" -}}
|
|
{{- with .Reason -}}
|
|
{{- " " -}}🛑 {{ . -}}{{- "\n" -}}
|
|
{{- end -}}
|
|
{{- with .Output -}}
|
|
{{- . -}}{{- "\n" -}}
|
|
{{- end -}}
|
|
{{- with .TestCases -}}
|
|
{{- /* Passing tests are first */ -}}
|
|
{{- range . -}}
|
|
{{- if eq .Result "PASS" -}}
|
|
::group::{{ "\033" }}[0;32m✅{{ " " }}{{- .Name -}}
|
|
{{- "\033" -}}[0;37m ({{if $settings.ShowTestStatus}}{{.Result}}; {{end}}{{ .Duration -}}
|
|
{{- with .Coverage -}}
|
|
, coverage: {{ . }}%
|
|
{{- end -}})
|
|
{{- "\033" -}}[0m
|
|
{{- "\n" -}}
|
|
|
|
{{- with .Output -}}
|
|
{{- formatTestOutput . $settings -}}
|
|
{{- "\n" -}}
|
|
{{- end -}}
|
|
|
|
::endgroup::{{- "\n" -}}
|
|
{{- end -}}
|
|
{{- end -}}
|
|
|
|
{{- /* Then skipped tests are second */ -}}
|
|
{{- range . -}}
|
|
{{- if eq .Result "SKIP" -}}
|
|
::group::{{ "\033" }}[0;33m🚧{{ " " }}{{- .Name -}}
|
|
{{- "\033" -}}[0;37m ({{if $settings.ShowTestStatus}}{{.Result}}; {{end}}{{ .Duration -}}
|
|
{{- with .Coverage -}}
|
|
, coverage: {{ . }}%
|
|
{{- end -}})
|
|
{{- "\033" -}}[0m
|
|
{{- "\n" -}}
|
|
|
|
{{- with .Output -}}
|
|
{{- formatTestOutput . $settings -}}
|
|
{{- "\n" -}}
|
|
{{- end -}}
|
|
|
|
::endgroup::{{- "\n" -}}
|
|
{{- end -}}
|
|
{{- end -}}
|
|
|
|
{{- /* and failing tests are last */ -}}
|
|
{{- range . -}}
|
|
{{- if and (ne .Result "PASS") (ne .Result "SKIP") -}}
|
|
::group::{{ "\033" }}[0;31m❌{{ " " }}{{- .Name -}}
|
|
{{- "\033" -}}[0;37m ({{if $settings.ShowTestStatus}}{{.Result}}; {{end}}{{ .Duration -}}
|
|
{{- with .Coverage -}}
|
|
, coverage: {{ . }}%
|
|
{{- end -}})
|
|
{{- "\033" -}}[0m
|
|
{{- "\n" -}}
|
|
|
|
{{- with .Output -}}
|
|
{{- formatTestOutput . $settings -}}
|
|
{{- "\n" -}}
|
|
{{- end -}}
|
|
|
|
::endgroup::{{- "\n" -}}
|
|
{{- end -}}
|
|
{{- end -}}
|
|
{{- end -}}
|
|
{{- "\n" -}}
|
|
{{- end -}}
|