testgen

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Feb 23, 2026 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Artifact

type Artifact struct {
	Text     []byte
	Metadata Metadata
}

func Generate

func Generate(in Params) (Artifact, error)

type FaultKind

type FaultKind string
const (
	FaultMissingComma          FaultKind = "missing_comma"
	FaultMissingClosingBrace   FaultKind = "missing_closing_brace"
	FaultMissingClosingBracket FaultKind = "missing_closing_bracket"
	FaultExtraComma            FaultKind = "extra_comma"
	FaultInvalidToken          FaultKind = "invalid_token"
	FaultUnterminatedString    FaultKind = "unterminated_string"
	FaultMalformedNumber       FaultKind = "malformed_number"
	FaultInvalidEscape         FaultKind = "invalid_escape"
	FaultInvalidCommentClosure FaultKind = "invalid_comment_closure"
)

type FaultPlan

type FaultPlan struct {
	Faults []FaultSpec
	// RandomCount appends deterministic random faults after explicit Faults.
	RandomCount int
}

type FaultSpec

type FaultSpec struct {
	Kind FaultKind
	// Occurrence is 0-based by matching token kind in scan order.
	// Use -1 for deterministic random targeting controlled by seed.
	Occurrence int
}

type InjectedFault

type InjectedFault struct {
	Kind       FaultKind
	Occurrence int
	Offset     int64
	Applied    bool
	Detail     string
}

type Metadata

type Metadata struct {
	Seed    int64
	Profile profile.ProfileID
	Params  Params
	Summary Summary
	Faults  []InjectedFault
}

type Params

type Params struct {
	Seed    int64
	Profile profile.Profile

	Shape Shape

	MaxDepth     int
	AvgBranching int
	MaxBranching int
	TargetNodes  int

	StringMin int
	StringMax int

	EmitWhitespace     bool
	EmitComments       bool
	EmitTrailingCommas bool

	FaultPlan FaultPlan
}

func DefaultParams

func DefaultParams(seed int64, p profile.Profile) Params

type Shape

type Shape uint8
const (
	ShapeMixed Shape = iota
	ShapeObjectHeavy
	ShapeArrayHeavy
	ShapeScalarHeavy
)

type Summary

type Summary struct {
	Objects    int
	Arrays     int
	Members    int
	Scalars    int
	MaxDepth   int
	TotalNodes int
	Bytes      int
}

Directories

Path Synopsis
cmd
stressgen command

Jump to

Keyboard shortcuts

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