func (c *Log) Logf(format string, args ...interface{}) {
	c.logf(log.LevelMsg, format, args...)
}
Logf implements Log.Logf
package test
import (
	"fmt"
	"io"
	"os"
	"strings"
	"sync"
	"testing"
	sdk "github.com/go-gilbert/gilbert-sdk"
	"github.com/go-gilbert/gilbert/log"
)
type Log struct {
	T        *testing.T
	messages []string
	mtx      sync.Mutex
}
func (c *Log) log(level int, args ...interface{}) {
	c.T.Log(args...)
	c.mtx.Lock()
	c.messages = append(c.messages, fmt.Sprint(args...))
	c.mtx.Unlock()
}
func (c *Log) logf(level int, format string, args ...interface{}) {
	c.T.Logf(format, args...)
	c.mtx.Lock()
	c.messages = append(c.messages, fmt.Sprintf(format, args...))
	c.mtx.Unlock()
}
func (c *Log) AssertMessage(msg string) {
	for _, m := range c.messages {
		if strings.Contains(m, msg) {
			return
		}
	}
	c.T.Errorf("log: expected message '%s' was not logged", msg)
}
func (c *Log) SubLogger() sdk.Logger {
	return c
}
func (c *Log) Format(format string, args ...interface{}) string {
	return fmt.Sprintf(format, args...)
}
func (c *Log) Log(args ...interface{}) {
	c.log(log.LevelMsg, args...)
}