package media_test import ( "segmento/pkg/media" "testing" "time" "github.com/stretchr/testify/require" ) func TestSegmenterImplements(t *testing.T) { require.Implements(t, (*media.Segmenter)(nil), new(media.MP3Segmenter)) } func TestSegment(t *testing.T) { segment := media.NewSegment(10*time.Second, 0) require.Equal(t, time.Duration(0), segment.Duration()) require.True(t, segment.CanWrite(9*time.Second)) require.True(t, segment.CanWrite(10*time.Second)) require.False(t, segment.CanWrite(11*time.Second)) d := segment.IncrementDuration(10 * time.Second) require.Equal(t, segment.Duration(), d) require.Equal(t, 10*time.Second, segment.Duration()) require.False(t, segment.CanWrite(1*time.Millisecond)) }