func (m *TracerMock) Extract(p interface{}, p1 interface{}) (r opentracing.SpanContext, r1 error) {
	atomic.AddUint64(&m.ExtractPreCounter, 1)
	defer atomic.AddUint64(&m.ExtractCounter, 1)
	if m.ExtractMock.mockExpectations != nil {
		testify_assert.Equal(m.t, *m.ExtractMock.mockExpectations, TracerMockExtractParams{p, p1},
			"Tracer.Extract got unexpected parameters")
		if m.ExtractFunc == nil {
			m.t.Fatal("No results are set for the TracerMock.Extract")
			return
		}
	}
	if m.ExtractFunc == nil {
		m.t.Fatal("Unexpected call to TracerMock.Extract")
		return
	}
	return m.ExtractFunc(p, p1)
}
Extract implements github.com/opentracing/opentracing-go.Tracer interface
package templatestests
import (
	"sync/atomic"
	"time"
	minimock "github.com/gojuno/minimock/v3"
	opentracing "github.com/opentracing/opentracing-go"
	testify_assert "github.com/stretchr/testify/assert"
)
type TracerMock struct {
	t minimock.Tester
	ExtractFunc       func(p interface{}, p1 interface{}) (r opentracing.SpanContext, r1 error)
	ExtractCounter    uint64
	ExtractPreCounter uint64
	ExtractMock       mTracerMockExtract
	InjectFunc       func(p opentracing.SpanContext, p1 interface{}, p2 interface{}) (r error)
	InjectCounter    uint64
	InjectPreCounter uint64
	InjectMock       mTracerMockInject
	StartSpanFunc       func(p string, p1 ...opentracing.StartSpanOption) (r opentracing.Span)
	StartSpanCounter    uint64
	StartSpanPreCounter uint64
	StartSpanMock       mTracerMockStartSpan
}
func NewTracerMock(t minimock.Tester) *TracerMock {
	m := &TracerMock{t: t}
	if controller, ok := t.(minimock.MockController); ok {
		controller.RegisterMocker(m)
	}
	m.ExtractMock = mTracerMockExtract{mock: m}
	m.InjectMock = mTracerMockInject{mock: m}
	m.StartSpanMock = mTracerMockStartSpan{mock: m}
	return m
}
type mTracerMockExtract struct {
	mock             *TracerMock
	mockExpectations *TracerMockExtractParams
}
type TracerMockExtractParams struct {
	p  interface{}
	p1 interface{}
}
func (m *mTracerMockExtract) Expect(p interface{}, p1 interface{}) *mTracerMockExtract {
	m.mockExpectations = &TracerMockExtractParams{p, p1}
	return m
}
func (m *mTracerMockExtract) Return(r opentracing.SpanContext, r1 error) *TracerMock {
	m.mock.ExtractFunc = func(p interface{}, p1 interface{}) (opentracing.SpanContext, error) {
		return r, r1
	}
	return m.mock
}
func (m *mTracerMockExtract) Set(f func(p interface{}, p1 interface{}) (r opentracing.SpanContext, r1 error)) *TracerMock {
	m.mock.ExtractFunc = f
	return m.mock
}