github.com/tilt-dev/tilt@v0.33.15-0.20240515162809-0a22ed45d8a0/pkg/model/logstore/reader_test.go (about)

     1  package logstore
     2  
     3  import (
     4  	"sync"
     5  	"testing"
     6  
     7  	"github.com/stretchr/testify/assert"
     8  )
     9  
    10  func TestReader(t *testing.T) {
    11  	l := NewLogStore()
    12  	r := NewReader(&sync.RWMutex{}, l)
    13  
    14  	c1 := r.Checkpoint()
    15  	assert.Equal(t, "", r.ContinuingString(c1))
    16  
    17  	l.Append(newGlobalTestLogEvent("foo"), nil)
    18  	c2 := r.Checkpoint()
    19  	assert.Equal(t, "foo", r.ContinuingString(c1))
    20  
    21  	l.Append(newGlobalTestLogEvent("bar\n"), nil)
    22  	_ = c2
    23  	assert.Equal(t, "foobar\n", r.String())
    24  	assert.Equal(t, "foobar\n", r.ContinuingString(c1))
    25  	assert.Equal(t, "bar\n", r.ContinuingString(c2))
    26  
    27  	l.Append(newGlobalTestLogEvent("abc\n"), nil)
    28  	assert.Equal(t, "abc\n", l.Tail(1))
    29  	assert.Equal(t, "abc\n", r.Tail(1))
    30  }