12345678910111213141516171819202122232425262728293031 |
- package collection
- import (
- "testing"
- "github.com/stretchr/testify/assert"
- )
- func TestNewRing(t *testing.T) {
- assert.Panics(t, func() {
- NewRing(0)
- })
- }
- func TestRingLess(t *testing.T) {
- ring := NewRing(5)
- for i := 0; i < 3; i++ {
- ring.Add(i)
- }
- elements := ring.Take()
- assert.ElementsMatch(t, []interface{}{0, 1, 2}, elements)
- }
- func TestRingMore(t *testing.T) {
- ring := NewRing(5)
- for i := 0; i < 11; i++ {
- ring.Add(i)
- }
- elements := ring.Take()
- assert.ElementsMatch(t, []interface{}{6, 7, 8, 9, 10}, elements)
- }
|