Documentation ¶
Index ¶
Constants ¶
const ( // OriginalFormatTagKey is a key of the tag indicating the format of the // source data. Possible values: FormatJTR, FormatGTest. OriginalFormatTagKey = "orig_format" // FormatJTR is Chromium's JSON Test Results format. FormatJTR = "chromium_json_test_results" // FormatGTest is Chromium's GTest format. FormatGTest = "chromium_gtest" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type GTestResults ¶
type GTestResults struct { AllTests []string `json:"all_tests"` GlobalTags []string `json:"global_tags"` // PerIterationData is a vector of run iterations, each mapping test names to a list of test data. PerIterationData []map[string][]*GTestRunResult `json:"per_iteration_data"` // TestLocations maps test names to their location in code. TestLocations map[string]*Location `json:"test_locations"` }
GTestResults represents the structure as described to be generated in https://cs.chromium.org/chromium/src/base/test/launcher/test_results_tracker.h?l=83&rcl=96020cfd447cb285acfa1a96c37a67ed22fa2499 (base::TestResultsTracker::SaveSummaryAsJSON)
Fields not used by Test Results are omitted.
func (*GTestResults) ConvertFromJSON ¶
ConvertFromJSON reads the provided reader into the receiver.
The receiver is cleared and its fields overwritten.
func (*GTestResults) ToProtos ¶
func (r *GTestResults) ToProtos(ctx context.Context, testIDPrefix string, inv *pb.Invocation) ([]*TestResult, error)
ToProtos converts test results in r []*pb.TestResult and updates inv in-place accordingly. If an error is returned, inv is left unchanged.
Does not populate TestResult.Name or TestResult.ResultId.
type GTestRunResult ¶
type GTestRunResult struct { Status string `json:"status"` ElapsedTimeMs float64 `json:"elapsed_time_ms"` LosslessSnippet bool `json:"losless_snippet"` OutputSnippetBase64 string `json:"output_snippet_base64"` // Links are not generated by test_launcher, but harnesses built on top may add them to the json. Links map[string]string `json:"links"` }
GTestRunResult represents the per_iteration_data as described in https://cs.chromium.org/chromium/src/base/test/launcher/test_results_tracker.h?l=83&rcl=96020cfd447cb285acfa1a96c37a67ed22fa2499 (base::TestResultsTracker::SaveSummaryAsJSON)
Fields not used by Test Results are omitted.
type JSONTestResults ¶
type JSONTestResults struct { Interrupted bool `json:"interrupted"` PathDelimiter string `json:"path_delimiter"` TestsRaw json.RawMessage `json:"tests"` Tests map[string]*TestFields Version int32 `json:"version"` ArtifactTypes map[string]string `json:"artifact_types"` BuildNumber string `json:"build_number"` BuilderName string `json:"builder_name"` // Metadata associated with results, which may include a list of expectation_files, or // test_name_prefix e.g. in GPU tests (distinct from test_id_prefix passed in the recorder API // request). Metadata map[string]json.RawMessage `json:"metadata"` }
JSONTestResults represents the structure in https://chromium.googlesource.com/chromium/src/+/master/docs/testing/json_test_results_format.md
Deprecated fields and fields not used by Test Results are omitted.
func (*JSONTestResults) ConvertFromJSON ¶
ConvertFromJSON converts a JSON of test results in the JSON Test Results format to the internal struct format.
The receiver is cleared and its fields overwritten.
func (*JSONTestResults) ToProtos ¶
func (r *JSONTestResults) ToProtos(ctx context.Context, testIDPrefix, locationPrefix string, inv *pb.Invocation, availableArtifacts stringset.Set) ([]*TestResult, error)
ToProtos converts test results in r []*pb.TestResult and updates inv in-place accordingly. If an error is returned, inv is left unchanged.
Does not populate TestResult.Name or TestResult.ResultId.
type TestFields ¶
type TestFields struct { Actual string `json:"actual"` Expected string `json:"expected"` // TODO(crbug/1034021): Support only map[string][]string, as spec'd by the JSON Test Results // Format. ArtifactsRaw map[string]json.RawMessage `json:"artifacts"` Artifacts map[string][]string Time float64 `json:"time"` Times []float64 `json:"times"` }
TestFields represents the test fields structure in https://chromium.googlesource.com/chromium/src/+/master/docs/testing/json_test_results_format.md
Deprecated fields and fields not used by Test Results are omitted.
type TestResult ¶
type TestResult struct { *pb.TestResult // Artifacts maps from short artifact names to artifact keys. Artifacts map[string]string }
TestResult combines a test result with associated artifact keys.