tss-rocks/backend/internal/testutil/mock.go
CDN 05ddc1f783
Some checks failed
Build Backend / Build Docker Image (push) Successful in 3m33s
Test Backend / test (push) Failing after 31s
[feature] migrate to monorepo
2025-02-21 00:49:20 +08:00

32 lines
682 B
Go

package testutil
import (
"io"
"strings"
"testing"
"github.com/stretchr/testify/require"
)
// MockReadCloser is a mock implementation of io.ReadCloser
type MockReadCloser struct {
io.Reader
CloseFunc func() error
}
func (m MockReadCloser) Close() error {
if m.CloseFunc != nil {
return m.CloseFunc()
}
return nil
}
// NewMockReadCloser creates a new MockReadCloser with the given content
func NewMockReadCloser(content string) io.ReadCloser {
return MockReadCloser{Reader: strings.NewReader(content)}
}
// RequireMockEquals asserts that two mocks are equal
func RequireMockEquals(t *testing.T, expected, actual interface{}) {
require.Equal(t, expected, actual)
}