libmockery

package
v0.0.0-...-1065218 Latest Latest
Warning

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

Go to latest
Published: Aug 18, 2018 License: BSD-3-Clause Imports: 19 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Version = "2.0.0"
)

Variables

View Source
var ErrNotInterface = errors.New("expression not an interface")

ErrNotInterface is returned when the given type is not an interface type.

View Source
var ErrNotSetup = errors.New("not setup")

ErrNotSetup is returned when the generator is not configured.

View Source
var Gopath = os.Getenv("GOPATH")

Functions

func Same

func Same(a, b Content) error

Types

type Cleanup

type Cleanup func() error

type Content

type Content map[string]string

type FileOutputStreamProvider

type FileOutputStreamProvider struct {
	BaseDir string
}

func (*FileOutputStreamProvider) GetWriter

func (fosp *FileOutputStreamProvider) GetWriter(iface *Interface) (io.Writer, error, Cleanup)

type Generator

type Generator struct {
	// contains filtered or unexported fields
}

Generator is responsible for generating the string containing imports and the mock struct that will later be written out as file.

func NewGenerator

func NewGenerator(iface *Interface, pkg, importPrefix string) *Generator

NewGenerator builds a Generator.

func (*Generator) Generate

func (g *Generator) Generate() error

Generate builds a string that constitutes a valid go source file containing the mock of the relevant interface.

func (*Generator) GeneratePrologue

func (g *Generator) GeneratePrologue(pkg string)

GeneratePrologue generates the prologue of the mock.

func (*Generator) GeneratePrologueComment

func (g *Generator) GeneratePrologueComment(note string)

GeneratePrologueComment adds a note after the prologue to the output string.

func (*Generator) Write

func (g *Generator) Write(w io.Writer) error

type GeneratorVisitor

type GeneratorVisitor struct {
	Comment           string
	OutputPackageName string
	OutputProvider    OutputStreamProvider
	ImportPrefix      string
}

func (*GeneratorVisitor) VisitWalk

func (gv *GeneratorVisitor) VisitWalk(iface *Interface) error

type Hasher

type Hasher interface {
	Hash() (Content, error)
}

func NewHasher

func NewHasher(root string) Hasher

type Interface

type Interface struct {
	Name      string
	Path      string
	File      *ast.File
	Pkg       *types.Package
	Type      *types.Interface
	NamedType *types.Named
}

type NodeVisitor

type NodeVisitor struct {
	// contains filtered or unexported fields
}

func NewNodeVisitor

func NewNodeVisitor() *NodeVisitor

func (*NodeVisitor) DeclaredInterfaces

func (nv *NodeVisitor) DeclaredInterfaces() []string

func (*NodeVisitor) Visit

func (nv *NodeVisitor) Visit(node ast.Node) ast.Visitor

type OutputStreamProvider

type OutputStreamProvider interface {
	GetWriter(iface *Interface) (io.Writer, error, Cleanup)
}

type Parser

type Parser struct {
	// contains filtered or unexported fields
}

func NewParser

func NewParser() *Parser

func (*Parser) Find

func (p *Parser) Find(name string) (*Interface, error)

func (*Parser) FindInPackage

func (p *Parser) FindInPackage(name string, pkg *types.Package) *Interface

func (*Parser) Interfaces

func (p *Parser) Interfaces() []*Interface

func (*Parser) Load

func (p *Parser) Load() error

func (*Parser) Parse

func (p *Parser) Parse(path string) error

type StdoutStreamProvider

type StdoutStreamProvider struct {
}

func (*StdoutStreamProvider) GetWriter

func (ssp *StdoutStreamProvider) GetWriter(iface *Interface) (io.Writer, error, Cleanup)

type Walker

type Walker struct {
	BaseDir   string
	Interface string
}

func (*Walker) Walk

func (w *Walker) Walk(visitor WalkerVisitor) bool

Walk returns true if a mock is generated.

type WalkerVisitor

type WalkerVisitor interface {
	VisitWalk(*Interface) error
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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