package agent

import (
	"context"
	"time"

	"github.com/stretchr/testify/mock"
)

type mockHttpRequester struct {
	mock.Mock
}

func (m *mockHttpRequester) RequestWithHeaders(ctx context.Context, method, url string, req any, extraHeaders map[string]string) (int, []byte, error) {
	args := m.Called(ctx, method, url, req, extraHeaders)
	return args.Get(0).(int), args.Get(1).([]byte), args.Error(2)
}

func (m *mockHttpRequester) SetHttpTimeout(t time.Duration) {
	m.Called(t)
}

func (m *mockHttpRequester) Clone() HttpRequester {
	args := m.Called()
	return args.Get(0).(HttpRequester)
}
