junit

package
v0.0.99 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 23, 2021 License: Apache-2.0 Imports: 6 Imported by: 7

Documentation

Overview

Package junit describes the test-infra definition of "junit", and provides utilities to parse it.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Properties

type Properties struct {
	PropertyList []Property `xml:"property"`
}

Properties defines the xml element that stores the list of properties that are associated with one benchmark.

type Property

type Property struct {
	Name  string `xml:"name,attr"`
	Value string `xml:"value,attr"`
}

Property defines the xml element that stores additional metrics about each benchmark.

type Result

type Result struct {
	Name       string      `xml:"name,attr"`
	Time       float64     `xml:"time,attr"`
	ClassName  string      `xml:"classname,attr"`
	Failure    *string     `xml:"failure,omitempty"`
	Output     *string     `xml:"system-out,omitempty"`
	Error      *string     `xml:"system-err,omitempty"`
	Errored    *string     `xml:"error,omitempty"`
	Skipped    *string     `xml:"skipped,omitempty"`
	Properties *Properties `xml:"properties,omitempty"`
}

Result holds <testcase/> results

func (Result) Message

func (r Result) Message(max int) string

Message extracts the message for the junit test case.

Will use the first non-empty <error/>, <failure/>, <skipped/>, <system-err/>, <system-out/> value.

func (*Result) SetProperty

func (r *Result) SetProperty(name, value string)

SetProperty adds the specified property to the Result or replaces the existing value if a property with that name already exists.

func (Result) Truncate added in v0.0.34

func (r Result) Truncate(max int)

Truncate ensures that strings do not exceed the specified length.

type Suite

type Suite struct {
	XMLName  xml.Name `xml:"testsuite"`
	Suites   []Suite  `xml:"testsuite"`
	Name     string   `xml:"name,attr"`
	Time     float64  `xml:"time,attr"` // Seconds
	Failures int      `xml:"failures,attr"`
	Tests    int      `xml:"tests,attr"`
	Results  []Result `xml:"testcase"`
}

Suite holds <testsuite/> results

func (*Suite) Truncate added in v0.0.34

func (s *Suite) Truncate(max int)

Truncate ensures that strings do not exceed the specified length.

type Suites

type Suites struct {
	XMLName xml.Name `xml:"testsuites"`
	Suites  []Suite  `xml:"testsuite"`
}

Suites holds a <testsuites/> list of Suite results

func Parse

func Parse(buf []byte) (*Suites, error)

Parse returns the Suites representation of these XML bytes.

func ParseStream added in v0.0.34

func ParseStream(reader io.Reader) (*Suites, error)

ParseStream reads bytes into a Suites object.

func (*Suites) Truncate added in v0.0.34

func (s *Suites) Truncate(max int)

Truncate ensures that strings do not exceed the specified length.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL