mock

package
v1.5.3 Latest Latest
Warning

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

Go to latest
Published: Dec 13, 2017 License: AGPL-3.0 Imports: 19 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ERR_NOT_FOUND = errors.New("var not found in NullMySQL mock")

Functions

func NewClients added in v1.5.0

func NewClients() *clients

func PingAPI

func PingAPI(hostname string) (bool, *http.Response)

Types

type API

type API struct {
	GetCode  []int
	GetData  [][]byte
	GetError []error
	GetResp  []APIResponse
	PutResp  []APIResponse
	// contains filtered or unexported fields
}

func NewAPI

func NewAPI(origin, hostname, agentUuid string, links map[string]string) *API
func (a *API) AgentLink(resource string) string

func (*API) AgentUuid

func (a *API) AgentUuid() string

func (*API) Conn added in v1.5.0

func (a *API) Conn() *websocket.Conn

func (*API) Connect

func (a *API) Connect(hostname, basePath, agentUuid string) error

func (*API) ConnectChan added in v1.5.0

func (a *API) ConnectChan() chan bool

func (*API) ConnectOnce added in v1.5.0

func (a *API) ConnectOnce(timeout uint) error

func (*API) CreateInstance

func (a *API) CreateInstance(url string, it interface{}) (bool, error)

func (*API) Disconnect added in v1.5.0

func (a *API) Disconnect() error

func (*API) DisconnectOnce added in v1.5.0

func (a *API) DisconnectOnce() error
func (a *API) EntryLink(resource string) string

func (*API) ErrorChan added in v1.5.0

func (a *API) ErrorChan() chan error

func (*API) Get

func (a *API) Get(url string) (int, []byte, error)

func (*API) GetConnectionConfig added in v1.5.0

func (a *API) GetConnectionConfig() pct.ConnectionConfig

func (*API) Hostname

func (a *API) Hostname() string

func (*API) Init

func (a *API) Init(hostname string, headers map[string]string) (code int, err error)

func (*API) Origin

func (a *API) Origin() string

func (*API) Post

func (a *API) Post(url string, data []byte) (*http.Response, []byte, error)

func (*API) Put

func (a *API) Put(url string, data []byte) (*http.Response, []byte, error)

func (*API) Recv added in v1.5.0

func (a *API) Recv(data interface{}, timeout uint) error

func (*API) RecvChan added in v1.5.0

func (a *API) RecvChan() chan *proto.Cmd

func (*API) Send added in v1.5.0

func (a *API) Send(data interface{}, timeout uint) error

func (*API) SendBytes added in v1.5.0

func (a *API) SendBytes(data []byte, timeout uint) error

func (*API) SendChan added in v1.5.0

func (a *API) SendChan() chan *proto.Reply

func (*API) Start added in v1.5.0

func (a *API) Start()

func (*API) Status added in v1.5.0

func (a *API) Status() map[string]string

func (*API) Stop added in v1.5.0

func (a *API) Stop()

func (*API) URL

func (a *API) URL(paths ...string) string

type APIResponse

type APIResponse struct {
	Code  int
	Data  []byte
	Error error
}

type AnalyzerArgs

type AnalyzerArgs struct {
	Type          string
	Name          string
	ProtoInstance proto.Instance
	RestartChan   chan proto.Instance
	TickChan      chan time.Time
}

type Clock

type Clock struct {
	Added   []uint
	Removed []chan time.Time
	Eta     float64
}

func NewClock

func NewClock() *Clock

func (*Clock) Add

func (m *Clock) Add(c chan time.Time, t uint, sync bool)

func (*Clock) ETA

func (m *Clock) ETA(c chan time.Time) float64

func (*Clock) Remove

func (m *Clock) Remove(c chan time.Time)

type CmdFactory

type CmdFactory struct {
	Cmds []*MockCmd
}

func (*CmdFactory) Make

func (f *CmdFactory) Make(name string, args ...string) cmd.Cmd

type ConnectionFactory

type ConnectionFactory struct {
	Conn mysql.Connector
}

func (*ConnectionFactory) Make

func (f *ConnectionFactory) Make(dsn string) mysql.Connector

type DataClient

type DataClient struct {

	// --
	ErrChan   chan error
	RecvError chan error

	ConnectError error
	TraceChan    chan string
	// contains filtered or unexported fields
}

func NewDataClient

func NewDataClient(dataChan chan []byte, respChan chan interface{}) *DataClient

func (*DataClient) Conn

func (c *DataClient) Conn() *websocket.Conn

func (*DataClient) Connect

func (c *DataClient) Connect()

func (*DataClient) ConnectChan

func (c *DataClient) ConnectChan() chan bool

func (*DataClient) ConnectOnce

func (c *DataClient) ConnectOnce(timeout uint) error

func (*DataClient) Disconnect

func (c *DataClient) Disconnect() error

func (*DataClient) DisconnectOnce

func (c *DataClient) DisconnectOnce() error

func (*DataClient) ErrorChan

func (c *DataClient) ErrorChan() chan error

func (*DataClient) Recv

func (c *DataClient) Recv(resp interface{}, timeout uint) error

Second, agent calls this to recv response from API to previous send.

func (*DataClient) RecvChan

func (c *DataClient) RecvChan() chan *proto.Cmd

func (*DataClient) Send

func (c *DataClient) Send(data interface{}, timeout uint) error

func (*DataClient) SendBytes

func (c *DataClient) SendBytes(data []byte, timeout uint) error

First, agent calls this to send encoded proto.Data to API.

func (*DataClient) SendChan

func (c *DataClient) SendChan() chan *proto.Reply

func (*DataClient) SetConnectChan

func (c *DataClient) SetConnectChan(connectChan chan bool)

func (*DataClient) Start

func (c *DataClient) Start()

func (*DataClient) Status

func (c *DataClient) Status() map[string]string

func (*DataClient) Stop

func (c *DataClient) Stop()

type LogParser

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

func NewLogParser

func NewLogParser() *LogParser

func (*LogParser) EventChan

func (p *LogParser) EventChan() <-chan *log.Event

func (*LogParser) Send

func (p *LogParser) Send(e *log.Event)

func (*LogParser) Start

func (p *LogParser) Start() error

func (*LogParser) Stop

func (p *LogParser) Stop()

type MockCmd

type MockCmd struct {
	Name string
	Args []string
	// --
	RunOutput string
	RunErr    error
}

func NewMockCmd

func NewMockCmd(name string, args ...string) *MockCmd

func (*MockCmd) Run

func (c *MockCmd) Run() (output string, err error)

type MockServiceManager

type MockServiceManager struct {
	StartErr     error
	StopErr      error
	IsRunningVal bool

	Cmds []*proto.Cmd
	// contains filtered or unexported fields
}

func NewMockServiceManager

func NewMockServiceManager(
	name string,
	startWaitGroup *sync.WaitGroup,
	traceChan chan string,
) *MockServiceManager

func (*MockServiceManager) GetConfig

func (m *MockServiceManager) GetConfig() ([]proto.AgentConfig, []error)

func (*MockServiceManager) GetDefaults added in v1.5.0

func (m *MockServiceManager) GetDefaults(uuid string) map[string]interface{}

func (*MockServiceManager) Handle

func (m *MockServiceManager) Handle(cmd *proto.Cmd) *proto.Reply

func (*MockServiceManager) IsRunning

func (m *MockServiceManager) IsRunning() bool

func (*MockServiceManager) Reset

func (m *MockServiceManager) Reset()

func (*MockServiceManager) Start

func (m *MockServiceManager) Start() error

func (*MockServiceManager) Status

func (m *MockServiceManager) Status() map[string]string

func (*MockServiceManager) Stop

func (m *MockServiceManager) Stop() error

type MrmsMonitor

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

func NewMrmsMonitor

func NewMrmsMonitor() *MrmsMonitor

func (*MrmsMonitor) Add

func (m *MrmsMonitor) Add(in proto.Instance) chan proto.Instance

func (*MrmsMonitor) Check

func (m *MrmsMonitor) Check()

func (*MrmsMonitor) ListenerCount

func (m *MrmsMonitor) ListenerCount(uuid string) uint

func (*MrmsMonitor) Remove

func (m *MrmsMonitor) Remove(uuid string, c chan proto.Instance)

func (*MrmsMonitor) SimulateMySQLRestart

func (m *MrmsMonitor) SimulateMySQLRestart()

The restartChan in the real MrmsMonitor is read only. To be consistent with that, instead of returning the channel just for testing purposes, we have this method to simulate a MySQL restart

func (*MrmsMonitor) Start

func (m *MrmsMonitor) Start(interval time.Duration) error

func (*MrmsMonitor) Status

func (m *MrmsMonitor) Status() (status map[string]string)

func (*MrmsMonitor) Stop

func (m *MrmsMonitor) Stop() error

type NullClient

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

func (*NullClient) Conn

func (c *NullClient) Conn() *websocket.Conn

func (*NullClient) Connect

func (c *NullClient) Connect()

func (*NullClient) ConnectChan

func (c *NullClient) ConnectChan() chan bool

func (*NullClient) ConnectOnce

func (c *NullClient) ConnectOnce() error

func (*NullClient) Disconnect

func (c *NullClient) Disconnect() error

func (*NullClient) ErrorChan

func (c *NullClient) ErrorChan() chan error

func (*NullClient) Recv

func (c *NullClient) Recv(data interface{}, timeout uint) error

func (*NullClient) RecvChan

func (c *NullClient) RecvChan() chan *proto.Cmd

func (*NullClient) Send

func (c *NullClient) Send(data interface{}, timeout uint) error

func (*NullClient) SendBytes

func (c *NullClient) SendBytes(data []byte, timeout uint) error

func (*NullClient) SendChan

func (c *NullClient) SendChan() chan *proto.Reply

func (*NullClient) Start

func (c *NullClient) Start()

func (*NullClient) Stop

func (c *NullClient) Stop()

type NullMySQL

type NullMySQL struct {
	SetCond *sync.Cond

	Version              string
	CurrentTzOffsetHours int
	SystemTzOffsetHours  int
	// contains filtered or unexported fields
}

func NewNullMySQL

func NewNullMySQL() *NullMySQL

func (*NullMySQL) AtLeastVersion

func (n *NullMySQL) AtLeastVersion(v string) (bool, error)

func (*NullMySQL) Close

func (n *NullMySQL) Close()

func (*NullMySQL) Connect

func (n *NullMySQL) Connect() error

func (*NullMySQL) DB

func (n *NullMySQL) DB() *sql.DB

func (*NullMySQL) DSN

func (n *NullMySQL) DSN() string

func (*NullMySQL) Exec

func (n *NullMySQL) Exec(queries []string) error

func (*NullMySQL) Explain

func (n *NullMySQL) Explain(db, query string, convert bool) (*proto.ExplainResult, error)

func (*NullMySQL) GetExec

func (n *NullMySQL) GetExec() []string

func (*NullMySQL) GetGlobalVarBoolean added in v1.5.0

func (n *NullMySQL) GetGlobalVarBoolean(varName string) (varValue sql.NullBool, err error)

func (*NullMySQL) GetGlobalVarInteger added in v1.5.0

func (n *NullMySQL) GetGlobalVarInteger(varName string) (varValue sql.NullInt64, err error)

func (*NullMySQL) GetGlobalVarNumeric added in v1.5.0

func (n *NullMySQL) GetGlobalVarNumeric(varName string) (varValue sql.NullFloat64, err error)

func (*NullMySQL) GetGlobalVarString

func (n *NullMySQL) GetGlobalVarString(varName string) (varValue sql.NullString, err error)

func (*NullMySQL) GetSet

func (n *NullMySQL) GetSet() []mysql.Query

func (*NullMySQL) GetUptimeCount

func (n *NullMySQL) GetUptimeCount() uint

func (*NullMySQL) Reset

func (n *NullMySQL) Reset()

func (*NullMySQL) Set

func (n *NullMySQL) Set(queries []mysql.Query) error

func (*NullMySQL) SetAtLeastVersion

func (n *NullMySQL) SetAtLeastVersion(atLeastVersion bool, err error)

func (*NullMySQL) SetGlobalVarInteger added in v1.5.0

func (n *NullMySQL) SetGlobalVarInteger(name string, value int64)

func (*NullMySQL) SetGlobalVarNumeric added in v1.5.0

func (n *NullMySQL) SetGlobalVarNumeric(name string, value float64)

func (*NullMySQL) SetGlobalVarString

func (n *NullMySQL) SetGlobalVarString(name, value string)

func (*NullMySQL) SetUptime

func (n *NullMySQL) SetUptime(uptime int64)

func (*NullMySQL) TableInfo added in v1.5.0

func (n *NullMySQL) TableInfo(tables *proto.TableInfoQuery) (proto.TableInfoResult, error)

func (*NullMySQL) UTCOffset

func (n *NullMySQL) UTCOffset() (time.Duration, time.Duration, error)

func (*NullMySQL) Uptime

func (n *NullMySQL) Uptime() (int64, error)

func (*NullMySQL) VersionConstraint added in v1.5.0

func (n *NullMySQL) VersionConstraint(constraint string) (bool, error)

VersionConstraint checks if version fits given constraint

type QanAnalyzer

type QanAnalyzer struct {
	StartChan chan bool
	StopChan  chan bool
	ErrorChan chan error
	CrashChan chan bool

	ValidateConfigMock func(config pc.QAN) (pc.QAN, error)
	Defaults           map[string]interface{}
	// contains filtered or unexported fields
}

func NewQanAnalyzer

func NewQanAnalyzer(name string) *QanAnalyzer

func (*QanAnalyzer) Config

func (a *QanAnalyzer) Config() pc.QAN

func (*QanAnalyzer) GetDefaults added in v1.5.0

func (a *QanAnalyzer) GetDefaults(uuid string) map[string]interface{}

func (*QanAnalyzer) SetConfig

func (a *QanAnalyzer) SetConfig(config pc.QAN)

func (*QanAnalyzer) Start

func (a *QanAnalyzer) Start() error

func (*QanAnalyzer) Status

func (a *QanAnalyzer) Status() map[string]string

func (*QanAnalyzer) Stop

func (a *QanAnalyzer) Stop() error

func (*QanAnalyzer) String

func (a *QanAnalyzer) String() string

func (*QanAnalyzer) ValidateConfig added in v1.5.0

func (a *QanAnalyzer) ValidateConfig(config pc.QAN) (pc.QAN, error)

type QanAnalyzerFactory

type QanAnalyzerFactory struct {
	Args []AnalyzerArgs
	// contains filtered or unexported fields
}

func NewQanAnalyzerFactory

func NewQanAnalyzerFactory(a ...analyzer.Analyzer) *QanAnalyzerFactory

func (*QanAnalyzerFactory) Make

func (f *QanAnalyzerFactory) Make(
	analyzerType string,
	analyzerName string,
	protoInstance proto.Instance,
) (
	analyzer.Analyzer,
	error,
)

type Spooler

type Spooler struct {
	FilesOut []string          // test provides
	DataOut  map[string][]byte // test provides
	DataIn   []interface{}

	RejectedFiles []string
	// contains filtered or unexported fields
}

func NewSpooler

func NewSpooler(dataChan chan interface{}) *Spooler

func (*Spooler) CancelFiles

func (s *Spooler) CancelFiles()

func (*Spooler) Files

func (s *Spooler) Files() <-chan string

func (*Spooler) Read

func (s *Spooler) Read(file string) ([]byte, error)

func (*Spooler) Reject

func (s *Spooler) Reject(file string) error

func (*Spooler) Remove

func (s *Spooler) Remove(file string) error

func (*Spooler) Reset

func (s *Spooler) Reset()

func (*Spooler) Start

func (s *Spooler) Start(sz proto.Serializer) error

func (*Spooler) Status

func (s *Spooler) Status() map[string]string

func (*Spooler) Stop

func (s *Spooler) Stop() error

func (*Spooler) Write

func (s *Spooler) Write(service string, data interface{}) error

type Ticker

type Ticker struct {
	Added       []chan time.Time
	RunningChan chan bool
	// contains filtered or unexported fields
}

func NewTicker

func NewTicker(syncChan chan bool) *Ticker

func (*Ticker) Add

func (t *Ticker) Add(c chan time.Time)

func (*Ticker) ETA

func (t *Ticker) ETA(now int64) float64

func (*Ticker) Remove

func (t *Ticker) Remove(c chan time.Time)

func (*Ticker) Run

func (t *Ticker) Run(now int64)

func (*Ticker) Stop

func (t *Ticker) Stop()

type TickerFactory

type TickerFactory struct {
	Made []uint
	// contains filtered or unexported fields
}

func NewTickerFactory

func NewTickerFactory() *TickerFactory

func (*TickerFactory) Make

func (tf *TickerFactory) Make(atInterval uint, sync bool) ticker.Ticker

func (*TickerFactory) Set

func (tf *TickerFactory) Set(tickers []ticker.Ticker)

type WebsocketClient

type WebsocketClient struct {
	ErrChan      chan error
	SendError    chan error
	RecvError    chan error
	ConnectError error

	RecvBytes chan []byte
	TraceChan chan string
	// contains filtered or unexported fields
}

func NewWebsocketClient

func NewWebsocketClient(sendChan chan *proto.Cmd, recvChan chan *proto.Reply, sendDataChan chan interface{}, recvDataChan chan interface{}) *WebsocketClient

func (*WebsocketClient) Conn

func (c *WebsocketClient) Conn() *websocket.Conn

func (*WebsocketClient) Connect

func (c *WebsocketClient) Connect()

func (*WebsocketClient) ConnectChan

func (c *WebsocketClient) ConnectChan() chan bool

func (*WebsocketClient) ConnectOnce

func (c *WebsocketClient) ConnectOnce(timeout uint) error

func (*WebsocketClient) Disconnect

func (c *WebsocketClient) Disconnect() error

func (*WebsocketClient) DisconnectOnce

func (c *WebsocketClient) DisconnectOnce() error

func (*WebsocketClient) ErrorChan

func (c *WebsocketClient) ErrorChan() chan error

func (*WebsocketClient) Recv

func (c *WebsocketClient) Recv(data interface{}, timeout uint) error

func (*WebsocketClient) RecvChan

func (c *WebsocketClient) RecvChan() chan *proto.Cmd

func (*WebsocketClient) Send

func (c *WebsocketClient) Send(data interface{}, timeout uint) error

func (*WebsocketClient) SendBytes

func (c *WebsocketClient) SendBytes(data []byte, timeout uint) error

func (*WebsocketClient) SendChan

func (c *WebsocketClient) SendChan() chan *proto.Reply

func (*WebsocketClient) SetConnectChan

func (c *WebsocketClient) SetConnectChan(connectChan chan bool)

func (*WebsocketClient) Start

func (c *WebsocketClient) Start()

func (*WebsocketClient) Status

func (c *WebsocketClient) Status() map[string]string

func (*WebsocketClient) Stop

func (c *WebsocketClient) Stop()

type WebsocketServer

type WebsocketServer struct {
	Clients *clients

	ClientConnectChan chan *client
	// contains filtered or unexported fields
}

func NewWebsocketServer added in v1.5.0

func NewWebsocketServer() *WebsocketServer

func (*WebsocketServer) Run

func (s *WebsocketServer) Run(addr string, endpoint string)

addr: http://127.0.0.1:8000 endpoint: /agent

func (*WebsocketServer) RunWss added in v1.5.0

func (s *WebsocketServer) RunWss(addr string, endpoint string)

addr: https://127.0.0.1:8443 endpoint: /agent

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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