mirror of
https://github.com/amir20/dozzle.git
synced 2025-12-21 21:33:18 +01:00
57 lines
1.5 KiB
Go
57 lines
1.5 KiB
Go
package docker
|
|
|
|
import (
|
|
"bufio"
|
|
"io"
|
|
"strings"
|
|
"testing"
|
|
|
|
"github.com/magiconair/properties/assert"
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestNewEventIterator(t *testing.T) {
|
|
input := "example input"
|
|
reader := bufio.NewReader(strings.NewReader(input))
|
|
|
|
generator := NewEventIterator(reader)
|
|
require.NotNil(t, generator, "Expected generator to not be nil, but got nil")
|
|
}
|
|
|
|
func TestEventGenerator_Next(t *testing.T) {
|
|
input := "example input"
|
|
reader := bufio.NewReader(strings.NewReader(input))
|
|
|
|
generator := NewEventIterator(reader)
|
|
|
|
event, err := generator.Next()
|
|
require.NoError(t, err, "Expected no error, but got: %v", err)
|
|
require.NotNil(t, event, "Expected event to not be nil, but got nil")
|
|
}
|
|
|
|
func TestEventGenerator_LastError(t *testing.T) {
|
|
input := "example input"
|
|
reader := bufio.NewReader(strings.NewReader(input))
|
|
|
|
generator := NewEventIterator(reader)
|
|
|
|
require.Nil(t, generator.LastError(), "Expected LastError to return nil, but got: %v", generator.LastError())
|
|
|
|
generator.Next()
|
|
|
|
// expert error to be EOF
|
|
assert.Equal(t, generator.LastError(), io.EOF, "Expected LastError to return EOF, but got: %v", generator.LastError().Error())
|
|
}
|
|
|
|
func TestEventGenerator_Peek(t *testing.T) {
|
|
input := "example input"
|
|
reader := bufio.NewReader(strings.NewReader(input))
|
|
|
|
generator := NewEventIterator(reader)
|
|
|
|
event := generator.Peek()
|
|
|
|
require.NotNil(t, event, "Expected event to not be nil, but got nil")
|
|
assert.Equal(t, event.Message, input, "Expected event message to be %s, but got: %s", input, event.Message.(string))
|
|
}
|