forked from quic-go/quic-go
ringbuffer: migrate test away from Ginkgo (#4671)
This commit is contained in:
@@ -1,13 +0,0 @@
|
||||
package ringbuffer
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
. "github.com/onsi/ginkgo/v2"
|
||||
. "github.com/onsi/gomega"
|
||||
)
|
||||
|
||||
func TestTestdata(t *testing.T) {
|
||||
RegisterFailHandler(Fail)
|
||||
RunSpecs(t, "ringbuffer suite")
|
||||
}
|
||||
@@ -1,50 +1,49 @@
|
||||
package ringbuffer
|
||||
|
||||
import (
|
||||
. "github.com/onsi/ginkgo/v2"
|
||||
. "github.com/onsi/gomega"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
var _ = Describe("RingBuffer", func() {
|
||||
It("push, peek and pop", func() {
|
||||
func TestPushPeekPop(t *testing.T) {
|
||||
r := RingBuffer[int]{}
|
||||
Expect(len(r.ring)).To(Equal(0))
|
||||
Expect(func() { r.PopFront() }).To(Panic())
|
||||
require.Equal(t, 0, len(r.ring))
|
||||
require.Panics(t, func() { r.PopFront() })
|
||||
r.PushBack(1)
|
||||
r.PushBack(2)
|
||||
r.PushBack(3)
|
||||
Expect(r.PeekFront()).To(Equal(1))
|
||||
Expect(r.PeekFront()).To(Equal(1))
|
||||
Expect(r.PopFront()).To(Equal(1))
|
||||
Expect(r.PeekFront()).To(Equal(2))
|
||||
Expect(r.PopFront()).To(Equal(2))
|
||||
require.Equal(t, 1, r.PeekFront())
|
||||
require.Equal(t, 1, r.PeekFront())
|
||||
require.Equal(t, 1, r.PopFront())
|
||||
require.Equal(t, 2, r.PeekFront())
|
||||
require.Equal(t, 2, r.PopFront())
|
||||
r.PushBack(4)
|
||||
r.PushBack(5)
|
||||
Expect(r.Len()).To(Equal(3))
|
||||
require.Equal(t, 3, r.Len())
|
||||
r.PushBack(6)
|
||||
Expect(r.Len()).To(Equal(4))
|
||||
Expect(r.PopFront()).To(Equal(3))
|
||||
Expect(r.PopFront()).To(Equal(4))
|
||||
Expect(r.PopFront()).To(Equal(5))
|
||||
Expect(r.PopFront()).To(Equal(6))
|
||||
})
|
||||
require.Equal(t, 4, r.Len())
|
||||
require.Equal(t, 3, r.PopFront())
|
||||
require.Equal(t, 4, r.PopFront())
|
||||
require.Equal(t, 5, r.PopFront())
|
||||
require.Equal(t, 6, r.PopFront())
|
||||
}
|
||||
|
||||
It("panics when Peek or Pop are called on an empty buffer", func() {
|
||||
func TestPanicOnEmptyBuffer(t *testing.T) {
|
||||
r := RingBuffer[string]{}
|
||||
Expect(r.Empty()).To(BeTrue())
|
||||
Expect(r.Len()).To(BeZero())
|
||||
Expect(func() { r.PeekFront() }).To(Panic())
|
||||
Expect(func() { r.PopFront() }).To(Panic())
|
||||
})
|
||||
require.True(t, r.Empty())
|
||||
require.Zero(t, r.Len())
|
||||
require.Panics(t, func() { r.PeekFront() })
|
||||
require.Panics(t, func() { r.PopFront() })
|
||||
}
|
||||
|
||||
It("clearing", func() {
|
||||
func TestClear(t *testing.T) {
|
||||
r := RingBuffer[int]{}
|
||||
r.Init(2)
|
||||
r.PushBack(1)
|
||||
r.PushBack(2)
|
||||
Expect(r.full).To(BeTrue())
|
||||
require.True(t, r.full)
|
||||
r.Clear()
|
||||
Expect(r.full).To(BeFalse())
|
||||
Expect(r.Len()).To(Equal(0))
|
||||
})
|
||||
})
|
||||
require.False(t, r.full)
|
||||
require.Equal(t, 0, r.Len())
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user