package template import ( "testing" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) func TestExtract_Basic(t *testing.T) { doc := `

Title

Content here

` result, err := Extract(doc, DefaultMarkerStart, DefaultMarkerEnd) require.NoError(t, err) assert.Equal(t, "

Title

\n

Content here

", result) } func TestExtract_CustomMarkers(t *testing.T) { doc := `Hello` result, err := Extract(doc, "", "") require.NoError(t, err) assert.Equal(t, "Hello", result) } func TestExtract_MissingStartMarker(t *testing.T) { doc := `` _, err := Extract(doc, DefaultMarkerStart, DefaultMarkerEnd) require.Error(t, err) assert.Contains(t, err.Error(), "start marker") } func TestExtract_MissingEndMarker(t *testing.T) { doc := `` _, err := Extract(doc, DefaultMarkerStart, DefaultMarkerEnd) require.Error(t, err) assert.Contains(t, err.Error(), "end marker") } func TestExtract_EmptyContent(t *testing.T) { doc := `` result, err := Extract(doc, DefaultMarkerStart, DefaultMarkerEnd) require.NoError(t, err) assert.Empty(t, result) }