package streamformatter

import (
	"bytes"
	"testing"

	"github.com/stretchr/testify/assert"
	"github.com/stretchr/testify/require"
)

func TestStreamWriterStdout(t *testing.T) {
	buffer := &bytes.Buffer{}
	content := "content"
	sw := NewStdoutWriter(buffer)
	size, err := sw.Write([]byte(content))

	require.NoError(t, err)
	assert.Equal(t, len(content), size)

	expected := `{"stream":"content"}` + streamNewline
	assert.Equal(t, expected, buffer.String())
}

func TestStreamWriterStderr(t *testing.T) {
	buffer := &bytes.Buffer{}
	content := "content"
	sw := NewStderrWriter(buffer)
	size, err := sw.Write([]byte(content))

	require.NoError(t, err)
	assert.Equal(t, len(content), size)

	expected := `{"stream":"\u001b[91mcontent\u001b[0m"}` + streamNewline
	assert.Equal(t, expected, buffer.String())
}
