generator

package
v0.4.4 Latest Latest
Warning

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

Go to latest
Published: Jul 6, 2026 License: MIT Imports: 22 Imported by: 0

Documentation

Index

Constants

View Source
const EnvLLMProviderCommand = "TESTLOOP_LLM_PROVIDER_CMD"

Variables

This section is empty.

Functions

func BuildGenerationContext

func BuildGenerationContext(srcPath string) *types.TestGenerationContext

BuildGenerationContext extracts source structure for semantic test generation.

func BuildGenerationContextWithOptions

func BuildGenerationContextWithOptions(srcPath string, opts GenerateTestsOptions) *types.TestGenerationContext

func GenerateGoTests

func GenerateGoTests(srcPath string) (string, error)

GenerateGoTests 读取 Go 源文件,用 AST 分析生成表驱动测试代码

func GenerateGoTestsForCoverageTask

func GenerateGoTestsForCoverageTask(srcPath string, task *types.CoverageTestTask) (string, error)

func GenerateGoTestsPreferred

func GenerateGoTestsPreferred(srcPath string) (string, error)

GenerateGoTestsPreferred uses gotests when it is available and falls back to the built-in AST generator when the external tool cannot produce output.

func GenerateJavaTests

func GenerateJavaTests(source []byte, filePath string) (string, string, error)

GenerateJavaTests 为 Java 源码生成 JUnit 5 测试

func GenerateJavaTestsForCoverageTask

func GenerateJavaTestsForCoverageTask(source []byte, filePath string, task *types.CoverageTestTask) (string, string, error)

func GenerateJavaTestsForSource

func GenerateJavaTestsForSource(source []byte, filePath string) (string, string, error)

GenerateJavaTestsForSource 导出供 generator.go 调用

func GenerateJestTests

func GenerateJestTests(srcPath string) (string, error)

GenerateJestTests 读取 JS/TS 源文件,用 tree-sitter 解析后生成 Jest 测试代码

func GenerateJestTestsForCoverageTask

func GenerateJestTestsForCoverageTask(srcPath string, task *types.CoverageTestTask) (string, error)

func GeneratePytestTests

func GeneratePytestTests(srcPath string) (string, error)

GeneratePytestTests 读取 Python 源文件,用 tree-sitter 解析后生成 pytest 测试代码

func GeneratePytestTestsForCoverageTask

func GeneratePytestTestsForCoverageTask(srcPath string, task *types.CoverageTestTask) (string, error)

func GenerateRustTests

func GenerateRustTests(source []byte, filePath string) (string, string, error)

GenerateRustTests 为 Rust 源码生成 #[test] 测试

func GenerateRustTestsForCoverageTask

func GenerateRustTestsForCoverageTask(source []byte, filePath string, task *types.CoverageTestTask) (string, string, error)

func GenerateRustTestsForSource

func GenerateRustTestsForSource(source []byte, filePath string) (string, string, error)

GenerateRustTestsForSource 导出供 generator.go 调用

func GenerateTests

func GenerateTests(srcPath string) (string, error)

GenerateTests keeps the existing static generation behavior.

func GenerateTestsStatic

func GenerateTestsStatic(srcPath string) (string, error)

GenerateTestsStatic 根据源文件扩展名分发到对应的静态生成器

func GenerateTestsWithProvider

func GenerateTestsWithProvider(ctx context.Context, srcPath string, provider TestProvider) (string, error)

func GenerateTestsWithProviderOptions

func GenerateTestsWithProviderOptions(ctx context.Context, srcPath string, provider TestProvider, opts GenerateTestsOptions) (string, error)

func TestFileName

func TestFileName(srcPath string) string

TestFileName returns the conventional generated test file path for a source file.

Types

type ExternalLLMProvider

type ExternalLLMProvider struct {
	Command string
}

func (ExternalLLMProvider) GenerateTests

func (ExternalLLMProvider) Name

func (p ExternalLLMProvider) Name() string

type GenerateTestsOptions

type GenerateTestsOptions struct {
	CoverageTask *types.CoverageTestTask
}

type StaticProvider

type StaticProvider struct{}

func (StaticProvider) GenerateTests

func (StaticProvider) Name

func (StaticProvider) Name() string

type TestGenerationRequest

type TestGenerationRequest struct {
	SourceFile string                       `json:"source_file"`
	Context    *types.TestGenerationContext `json:"context,omitempty"`
	StaticCode string                       `json:"static_code,omitempty"`
}

type TestProvider

type TestProvider interface {
	Name() string
	GenerateTests(context.Context, TestGenerationRequest) (string, error)
}

TestProvider generates test code from a source file and generation context.

func NewTestProvider

func NewTestProvider(mode string) (TestProvider, error)

Jump to

Keyboard shortcuts

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