Documentation ¶
Overview ¶
package twirktest provides servers for use in tests and for testing the cleanliness of the generated output of protoc-gen-twirk.
Package twirktest is a generated twirk stub package. This code was generated with github.com/darioielardi/twirk/protoc-gen-twirk v5.8.0.
It is generated from these files:
service.proto
Index ¶
- Constants
- func NewHaberdasherServer(svc Haberdasher, hooks *twirk.ServerHooks) twirkServer
- func WriteError(resp http.ResponseWriter, err error)
- type HTTPClient
- type Haberdasher
- func ErroringHatmaker(err error) Haberdasher
- func HaberdasherFunc(f func(ctx context.Context, s *Size) (*Hat, error)) Haberdasher
- func NewHaberdasherJSONClient(addr string, client HTTPClient) Haberdasher
- func NewHaberdasherProtobufClient(addr string, client HTTPClient) Haberdasher
- func NilHatmaker() Haberdasher
- func NoopHatmaker() Haberdasher
- func PanickyHatmaker(p interface{}) Haberdasher
- func PickyHatmaker(want int32) Haberdasher
- func ServerAndClient(h Haberdasher, hooks *twirk.ServerHooks) (*httptest.Server, Haberdasher)
- func SlowHatmaker(dur time.Duration) Haberdasher
- type Hat
- func (*Hat) Descriptor() ([]byte, []int)
- func (m *Hat) GetColor() string
- func (m *Hat) GetName() string
- func (m *Hat) GetSize() int32
- func (*Hat) ProtoMessage()
- func (m *Hat) Reset()
- func (m *Hat) String() string
- func (m *Hat) XXX_DiscardUnknown()
- func (m *Hat) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *Hat) XXX_Merge(src proto.Message)
- func (m *Hat) XXX_Size() int
- func (m *Hat) XXX_Unmarshal(b []byte) error
- type Size
- func (*Size) Descriptor() ([]byte, []int)
- func (m *Size) GetInches() int32
- func (*Size) ProtoMessage()
- func (m *Size) Reset()
- func (m *Size) String() string
- func (m *Size) XXX_DiscardUnknown()
- func (m *Size) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *Size) XXX_Merge(src proto.Message)
- func (m *Size) XXX_Size() int
- func (m *Size) XXX_Unmarshal(b []byte) error
Constants ¶
const HaberdasherPathPrefix = "/twirk/twirk.internal.twirktest.Haberdasher/"
HaberdasherPathPrefix is used for all URL paths on a twirk Haberdasher server. Requests are always: POST HaberdasherPathPrefix/method It can be used in an HTTP mux to route twirk requests along with non-twirk requests on other routes.
Variables ¶
This section is empty.
Functions ¶
func NewHaberdasherServer ¶
func NewHaberdasherServer(svc Haberdasher, hooks *twirk.ServerHooks) twirkServer
func WriteError ¶
func WriteError(resp http.ResponseWriter, err error)
WriteError writes an HTTP response with a valid twirk error format (code, msg, meta). Useful outside of the twirk server (e.g. http middleware), but does not trigger hooks. If err is not a twirk.Error, it will get wrapped with twirk.InternalErrorWith(err)
Types ¶
type HTTPClient ¶
HTTPClient is the interface used by generated clients to send HTTP requests. It is fulfilled by *(net/http).Client, which is sufficient for most users. Users can provide their own implementation for special retry policies.
HTTPClient implementations should not follow redirects. Redirects are automatically disabled if *(net/http).Client is passed to client constructors. See the withoutRedirects function in this file for more details.
type Haberdasher ¶
type Haberdasher interface { // MakeHat produces a hat of mysterious, randomly-selected color! MakeHat(context.Context, *Size) (*Hat, error) }
A Haberdasher makes hats for clients.
func HaberdasherFunc ¶
HaberdasherFunc is a convenience to convert a function into a Haberdasher service.
func NewHaberdasherJSONClient ¶
func NewHaberdasherJSONClient(addr string, client HTTPClient) Haberdasher
NewHaberdasherJSONClient creates a JSON client that implements the Haberdasher interface. It communicates using JSON and can be configured with a custom HTTPClient.
func NewHaberdasherProtobufClient ¶
func NewHaberdasherProtobufClient(addr string, client HTTPClient) Haberdasher
NewHaberdasherProtobufClient creates a Protobuf client that implements the Haberdasher interface. It communicates using Protobuf and can be configured with a custom HTTPClient.
func PickyHatmaker ¶
func PickyHatmaker(want int32) Haberdasher
Makes a hat, as long as its the size they like
func ServerAndClient ¶
func ServerAndClient(h Haberdasher, hooks *twirk.ServerHooks) (*httptest.Server, Haberdasher)
func SlowHatmaker ¶
func SlowHatmaker(dur time.Duration) Haberdasher
Makes a hat, but sure takes their time
type Hat ¶
type Hat struct { Size int32 `protobuf:"varint,1,opt,name=size,proto3" json:"size,omitempty"` Color string `protobuf:"bytes,2,opt,name=color,proto3" json:"color,omitempty"` Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*Hat) Descriptor ¶
func (*Hat) ProtoMessage ¶
func (*Hat) ProtoMessage()
func (*Hat) XXX_DiscardUnknown ¶
func (m *Hat) XXX_DiscardUnknown()
func (*Hat) XXX_Unmarshal ¶
type Size ¶
type Size struct { Inches int32 `protobuf:"varint,1,opt,name=inches,proto3" json:"inches,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*Size) Descriptor ¶
func (*Size) ProtoMessage ¶
func (*Size) ProtoMessage()
func (*Size) XXX_DiscardUnknown ¶
func (m *Size) XXX_DiscardUnknown()
func (*Size) XXX_Unmarshal ¶
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
Package empty_service is a generated twirk stub package.
|
Package empty_service is a generated twirk stub package. |
Package gogo_compat is a generated protocol buffer package.
|
Package gogo_compat is a generated protocol buffer package. |
Package google_protobuf_imports is a generated twirk stub package.
|
Package google_protobuf_imports is a generated twirk stub package. |
Package importable is a generated twirk stub package.
|
Package importable is a generated twirk stub package. |
Package importer is a generated twirk stub package.
|
Package importer is a generated twirk stub package. |
x
Package x is a generated twirk stub package.
|
Package x is a generated twirk stub package. |
Package multiple is a generated twirk stub package.
|
Package multiple is a generated twirk stub package. |
Package no_package_name is a generated twirk stub package.
|
Package no_package_name is a generated twirk stub package. |
Package no_package_name_importer is a generated twirk stub package.
|
Package no_package_name_importer is a generated twirk stub package. |
Package proto is a generated twirk stub package.
|
Package proto is a generated twirk stub package. |
Package service_method_same_name is a generated twirk stub package.
|
Package service_method_same_name is a generated twirk stub package. |
Package snake_case_names is a generated twirk stub package.
|
Package snake_case_names is a generated twirk stub package. |
Package source_relative is a generated twirk stub package.
|
Package source_relative is a generated twirk stub package. |