Documentation ¶
Overview ¶
Package mock contains mock implementations of the query package interfaces for testing.
Index ¶
- Variables
- func CreateMockFromSource(spec plan.ProcedureSpec, id execute.DatasetID, ctx execute.Administration) (execute.Source, error)
- type Administration
- type AggregateTransformation
- type AscendingTimeProvider
- type Compiler
- type Executor
- type GroupTransformation
- type InfluxDBProvider
- type MqttClient
- type MqttDialer
- type NarrowStateTransformation
- type NarrowTransformation
- type Program
- type Query
- func (q *Query) Cancel()
- func (q *Query) Done()
- func (q *Query) Err() error
- func (q *Query) ProduceResults(resultProvider func(results chan<- flux.Result, canceled <-chan struct{}))
- func (q *Query) ProfilerResults() (flux.ResultIterator, error)
- func (q *Query) Results() <-chan flux.Result
- func (q *Query) SetErr(err error)
- func (q *Query) SetStatistics(stats flux.Statistics)
- func (q *Query) Statistics() flux.Statistics
- type SecretService
- type Source
- type Transformation
- func (t *Transformation) Finish(id execute.DatasetID, err error)
- func (t *Transformation) Process(id execute.DatasetID, tbl flux.Table) error
- func (t *Transformation) RetractTable(id execute.DatasetID, key flux.GroupKey) error
- func (t *Transformation) UpdateProcessingTime(id execute.DatasetID, ts execute.Time) error
- func (t *Transformation) UpdateWatermark(id execute.DatasetID, ts execute.Time) error
- type Transport
- func (t *Transport) Finish(id execute.DatasetID, err error)
- func (t *Transport) Process(id execute.DatasetID, tbl flux.Table) error
- func (t *Transport) ProcessMessage(m execute.Message) error
- func (t *Transport) RetractTable(id execute.DatasetID, key flux.GroupKey) error
- func (t *Transport) UpdateProcessingTime(id execute.DatasetID, ts execute.Time) error
- func (t *Transport) UpdateWatermark(id execute.DatasetID, ts execute.Time) error
Constants ¶
This section is empty.
Variables ¶
var NoMetadata <-chan metadata.Metadata
Functions ¶
func CreateMockFromSource ¶ added in v0.26.0
func CreateMockFromSource(spec plan.ProcedureSpec, id execute.DatasetID, ctx execute.Administration) (execute.Source, error)
CreateMockFromSource will register a mock "from" source. Use it like this in the init() of your test:
execute.RegisterSource(influxdb.FromKind, mock.CreateMockFromSource)
Types ¶
type Administration ¶ added in v0.50.0
type Administration struct {
// contains filtered or unexported fields
}
Administration is a mock implementation of the execute.Administration interface. This may be used for tests that require implementation of this interface.
func AdministrationWithContext ¶ added in v0.51.0
func AdministrationWithContext(ctx context.Context) *Administration
func (*Administration) Allocator ¶ added in v0.50.0
func (a *Administration) Allocator() *memory.Allocator
func (*Administration) Context ¶ added in v0.50.0
func (a *Administration) Context() context.Context
func (*Administration) Parents ¶ added in v0.50.0
func (a *Administration) Parents() []execute.DatasetID
func (*Administration) ResolveTime ¶ added in v0.50.0
func (a *Administration) ResolveTime(qt flux.Time) execute.Time
func (*Administration) StreamContext ¶ added in v0.50.0
func (a *Administration) StreamContext() execute.StreamContext
type AggregateTransformation ¶ added in v0.127.0
type AggregateTransformation struct { AggregateFn func(chunk table.Chunk, state interface{}, mem memory.Allocator) (interface{}, bool, error) ComputeFn func(key flux.GroupKey, state interface{}, d *execute.TransportDataset, mem memory.Allocator) error DisposeFn func() }
func (*AggregateTransformation) Compute ¶ added in v0.127.0
func (a *AggregateTransformation) Compute(key flux.GroupKey, state interface{}, d *execute.TransportDataset, mem memory.Allocator) error
func (*AggregateTransformation) Dispose ¶ added in v0.135.0
func (a *AggregateTransformation) Dispose()
type AscendingTimeProvider ¶ added in v0.21.0
type AscendingTimeProvider struct {
Start int64
}
AscendingTimeProvider provides ascending timestamps every nanosecond starting from Start.
func (*AscendingTimeProvider) CurrentTime ¶ added in v0.21.0
func (atp *AscendingTimeProvider) CurrentTime() values.Time
type Compiler ¶
type Compiler struct { CompileFn func(ctx context.Context) (flux.Program, error) Type flux.CompilerType }
func (Compiler) CompilerType ¶
func (c Compiler) CompilerType() flux.CompilerType
type Executor ¶
type Executor struct {
ExecuteFn func(ctx context.Context, p *plan.Spec, a *memory.Allocator) (map[string]flux.Result, <-chan metadata.Metadata, error)
}
Executor is a mock implementation of an execute.Executor.
func NewExecutor ¶
func NewExecutor() *Executor
NewExecutor returns a mock Executor where its methods will return zero values.
type GroupTransformation ¶ added in v0.128.0
type GroupTransformation struct { ProcessFn func(chunk table.Chunk, d *execute.TransportDataset, mem memory.Allocator) error DisposeFn func() }
func (*GroupTransformation) Dispose ¶ added in v0.135.0
func (a *GroupTransformation) Dispose()
func (*GroupTransformation) Process ¶ added in v0.128.0
func (n *GroupTransformation) Process(chunk table.Chunk, d *execute.TransportDataset, mem memory.Allocator) error
type InfluxDBProvider ¶ added in v0.117.0
type MqttClient ¶ added in v0.136.0
type MqttClient struct { PublishFn func(ctx context.Context, topic string, qos byte, retain bool, payload interface{}) error CloseFn func() error }
func (MqttClient) Close ¶ added in v0.136.0
func (m MqttClient) Close() error
type MqttDialer ¶ added in v0.136.0
type NarrowStateTransformation ¶ added in v0.130.0
type NarrowStateTransformation struct { ProcessFn func(chunk table.Chunk, state interface{}, d *execute.TransportDataset, mem memory.Allocator) (interface{}, bool, error) DisposeFn func() }
func (*NarrowStateTransformation) Dispose ¶ added in v0.135.0
func (a *NarrowStateTransformation) Dispose()
type NarrowTransformation ¶ added in v0.125.0
type NarrowTransformation struct { ProcessFn func(chunk table.Chunk, d *execute.TransportDataset, mem memory.Allocator) error DisposeFn func() }
func (*NarrowTransformation) Dispose ¶ added in v0.135.0
func (a *NarrowTransformation) Dispose()
func (*NarrowTransformation) Process ¶ added in v0.125.0
func (n *NarrowTransformation) Process(chunk table.Chunk, d *execute.TransportDataset, mem memory.Allocator) error
type Program ¶ added in v0.26.0
type Program struct { StartFn func(ctx context.Context, alloc *memory.Allocator) (*Query, error) ExecuteFn func(ctx context.Context, q *Query, alloc *memory.Allocator) }
Program is a mock program that can be returned by the mock compiler. It will construct a mock query that will then be passed to ExecuteFn.
type Query ¶ added in v0.26.0
type Query struct { ResultsCh chan flux.Result CancelFn func() Canceled chan struct{} // contains filtered or unexported fields }
Query provides a customizable query that implements flux.Query. Results, as well as errors, statistics, and the cancel function can be set.
func (*Query) ProduceResults ¶ added in v0.27.0
func (q *Query) ProduceResults(resultProvider func(results chan<- flux.Result, canceled <-chan struct{}))
ProduceResults lets the user provide a function to produce results on the channel returned by `Results`. `resultProvider` should check if `canceled` has been closed before sending results. E.g.: ```
func (results chan<- flux.Result, canceled <-chan struct{}) { for _, r := range resultsSlice { select { case <-canceled: return default: results <- r } } }
``` `resultProvider` is run in a separate goroutine and Results() is closed after function completion. ProduceResults can be called only once per Query.
func (*Query) ProfilerResults ¶ added in v0.82.0
func (q *Query) ProfilerResults() (flux.ResultIterator, error)
func (*Query) SetStatistics ¶ added in v0.27.0
func (q *Query) SetStatistics(stats flux.Statistics)
SetStatistics sets stats for this query. Stats will be available after `Done` is called.
func (*Query) Statistics ¶ added in v0.26.0
func (q *Query) Statistics() flux.Statistics
type SecretService ¶ added in v0.41.0
func (SecretService) LoadSecret ¶ added in v0.41.0
type Source ¶ added in v0.26.0
type Source struct { execute.ExecutionNode AddTransformationFn func(transformation execute.Transformation) RunFn func(ctx context.Context) }
Source is a mock source that performs the given functions. By default it does nothing.
func (*Source) AddTransformation ¶ added in v0.26.0
func (s *Source) AddTransformation(t execute.Transformation)
type Transformation ¶ added in v0.125.0
type Transformation struct { ProcessFn func(id execute.DatasetID, tbl flux.Table) error FinishFn func(id execute.DatasetID, err error) }
func (*Transformation) Finish ¶ added in v0.125.0
func (t *Transformation) Finish(id execute.DatasetID, err error)