Documentation
¶
Overview ¶
Package gotest observes the bounded JSON event stream emitted by Go 1.27's `go test -json` mode without retaining test or build output text.
Index ¶
Constants ¶
View Source
const ( MaxLineBytes = 1 << 20 MaxEventBytes = 16 << 20 MaxOutputBytes = 8 << 20 MaxPackages = 4_096 MaxTests = 100_000 MaxEvents = 100_000 )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AttributeDigest ¶
type BuildState ¶
type Config ¶
type Config struct {
DiscoveredPackages []string
RequestedPackages []string
ArtifactRoot string
Process ProcessOutcome
}
Config binds runner events to the preceding discovery and to a run-owned artifact directory. All fields are mandatory.
type Event ¶
type Event struct {
Sequence uint64
Kind EventKind
Action string
Package string
Test string
ImportPath string
ElapsedNS int64
HasElapsed bool
RawTime string
TimeUTC time.Time
HasTime bool
OutputType string
OutputDigest string
OutputBytes uint64
HasOutput bool
FailedBuild string
Attribute *AttributeDigest
ArtifactPathSHA256 string
}
func (Event) CanonicalFactBody ¶
CanonicalFactBody returns the normalized runner-fact payload. It deliberately excludes sequence, WEI, and event identity; those are bound by the coordinator only after the workspace execution identity exists.
type Failure ¶
type Failure string
const ( FailureRead Failure = "read" FailureMissingLF Failure = "missing_lf" FailureEmptyLine Failure = "empty_line" FailureOversizeLine Failure = "oversize_line" FailureTooManyEventBytes Failure = "too_many_event_bytes" FailureTooManyOutputBytes Failure = "too_many_output_bytes" FailureTooManyEvents Failure = "too_many_events" FailureTooManyPackages Failure = "too_many_packages" FailureTooManyTests Failure = "too_many_tests" FailureSink Failure = "sink" FailureMalformedJSON Failure = "malformed_json" FailureDuplicateKey Failure = "duplicate_key" FailureUnknownField Failure = "unknown_field" FailureMissingField Failure = "missing_field" FailureInvalidField Failure = "invalid_field" FailureUnknownAction Failure = "unknown_action" FailureSequenceConflict Failure = "sequence_conflict" FailureMissingTerminal Failure = "missing_terminal" FailureConflictingTerminal Failure = "conflicting_terminal" FailureConfig Failure = "config" FailurePackageDiscovery Failure = "package_discovery" FailureArtifactContainment Failure = "artifact_containment" FailureBuildMismatch Failure = "build_mismatch" FailureProcessMismatch Failure = "process_mismatch" )
type Observation ¶
type Observation struct {
Events []Event
Packages []PackageState
Builds []BuildState
EventCount uint64
EventBytes uint64
OutputBytes uint64
TestCount uint64
IncompleteReasons []string
}
type PackageState ¶
type ProcessOutcome ¶
ProcessOutcome is the terminal result of the exact go test process whose stdout is supplied to Observe or Stream.
Click to show internal directories.
Click to hide internal directories.