mock: github.com/golang/mock/sample Index | Files | Directories

package user

import "github.com/golang/mock/sample"

An example package with an interface.

Index

Package Files

user.go

func GrabPointer Uses

func GrabPointer(index Index) int

func Remember Uses

func Remember(index Index, keys []string, values []interface{})

A function that we will test that uses the above interface. It takes a list of keys and values, and puts them in the index.

type Embed Uses

type Embed interface {
    RegularMethod()
    Embedded
    imp1.ForeignEmbedded
}

An interface with an embedded interface.

type Embedded Uses

type Embedded interface {
    EmbeddedMethod()
}

type Index Uses

type Index interface {
    Get(key string) interface{}
    GetTwo(key1, key2 string) (v1, v2 interface{})
    Put(key string, value interface{})

    // Check that imports are handled correctly.
    Summary(buf *btz.Buffer, w io.Writer)
    Other() hash.Hash
    Templates(a t1.CSS, b t2.FuncMap)

    // A method with an anonymous argument.
    Anon(string)

    // Methods using foreign types outside the standard library.
    ForeignOne(imp1.Imp1)
    ForeignTwo(renamed2.Imp2)
    ForeignThree(Imp3)
    ForeignFour(imp_four.Imp4)

    // A method that returns a nillable type.
    NillableRet() error
    // A method that returns a non-interface type.
    ConcreteRet() chan<- bool

    // Methods with an ellipsis argument.
    Ellip(fmt string, args ...interface{})
    EllipOnly(...string)

    // A method with a pointer argument that we will set.
    Ptr(arg *int)

    // A method with a slice argument and an array return.
    Slice(a []int, b []byte) [3]int

    // A method with channel arguments.
    Chan(a chan int, b chan<- hash.Hash)

    // A method with a function argument.
    Func(f func(http.Request) (int, bool))

    // A method with a map argument.
    Map(a map[int]hash.Hash)

    // Methods with an unnamed empty struct argument.
    Struct(a struct{})          // not so likely
    StructChan(a chan struct{}) // a bit more common
}

A bizarre interface to test corner cases in mockgen. This would normally be in its own file or package, separate from the user of it (e.g. io.Reader).

Directories

PathSynopsis
concurrentPackage concurrent demonstrates how to use gomock with goroutines.
concurrent/mockPackage mock_concurrent is a generated GoMock package.
imp1
imp2
imp3
imp4
mock_userPackage mock_sample is a generated GoMock package.

Package user imports 12 packages (graph). Updated 2019-04-16. Refresh now. Tools for package owners.