{{- /*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 -}}