liuhaijun 3f5f28d785 add sheduling agent
Change-Id: I89f35fb3984044c57f10727432755012542f9fd8
2023-11-16 10:55:57 +00:00

40 lines
930 B
Go

package mlog
import (
"bytes"
"github.com/stretchr/testify/require"
"testing"
)
func TestNewWriterOutput(t *testing.T) {
buf := &bytes.Buffer{}
o := NewWriterOutput(buf, []byte("a"), []byte("b"))
_, err := o.Write([]byte("hello\n"))
require.NoError(t, err)
_, err = o.ReadFrom(bytes.NewReader([]byte("hello\nworld")))
require.NoError(t, err)
require.Equal(t, "ahello\nbahello\nbaworld\nb", buf.String())
}
func TestMultiOutput(t *testing.T) {
buf1 := &bytes.Buffer{}
o1 := NewWriterOutput(buf1, []byte("a"), []byte("b"))
buf2 := &bytes.Buffer{}
o2 := NewWriterOutput(buf2, []byte("c"), []byte("d"))
o := MultiOutput(o1, o2)
_, err := o.Write([]byte("hello\n"))
require.NoError(t, err)
_, err = o.ReadFrom(bytes.NewReader([]byte("hello\nworld")))
require.NoError(t, err)
require.Equal(t, "ahello\nbahello\nbaworld\nb", buf1.String())
require.Equal(t, "chello\ndchello\ndcworld\nd", buf2.String())
}