func (_d *TestInterfaceRoundRobinPool) Channels(chA chan bool, chB chan<- bool, chanC <-chan bool) {
	_counter := atomic.AddUint32(&_d.counter, 1)
	_d.pool[_counter%_d.poolSize].Channels(chA, chB, chanC)
	return
}
Channels implements TestInterface
package templatestests
import (
	"context"
	"errors"
	"sync/atomic"
)
type TestInterfaceRoundRobinPool struct {
	pool     []TestInterface
	poolSize uint32
	counter  uint32
}
func NewTestInterfaceRoundRobinPool(pool ...TestInterface) (*TestInterfaceRoundRobinPool, error) {
	if len(pool) == 0 {
		return nil, errors.New("empty pool")
	}
	return &TestInterfaceRoundRobinPool{pool: pool, poolSize: uint32(len(pool))}, nil
}
func MustNewTestInterfaceRoundRobinPool(pool ...TestInterface) *TestInterfaceRoundRobinPool {
	if len(pool) == 0 {
		panic("empty pool")
	}
	return &TestInterfaceRoundRobinPool{pool: pool, poolSize: uint32(len(pool))}
}