Переглянути джерело

Two more tests, just for completeness's sake

Evan Huus 11 роки тому
батько
коміт
5a1f0d394b
1 змінених файлів з 33 додано та 0 видалено
  1. 33 0
      queue_test.go

+ 33 - 0
queue_test.go

@@ -2,6 +2,39 @@ package queue
 
 import "testing"
 
+func TestQueueSimple(t *testing.T) {
+	q := New()
+
+	for i := 0; i < minQueueLen; i++ {
+		q.Add(i)
+	}
+	for i := 0; i < minQueueLen; i++ {
+		if q.Peek().(int) != i {
+			t.Error("peek", i, "had value", q.Peek())
+		}
+		q.Remove()
+	}
+}
+
+func TestQueueWrapping(t *testing.T) {
+	q := New()
+
+	for i := 0; i < minQueueLen; i++ {
+		q.Add(i)
+	}
+	for i := 0; i < 3; i++ {
+		q.Remove()
+		q.Add(minQueueLen + i)
+	}
+
+	for i := 0; i < minQueueLen; i++ {
+		if q.Peek().(int) != i+3 {
+			t.Error("peek", i, "had value", q.Peek())
+		}
+		q.Remove()
+	}
+}
+
 func TestQueueLength(t *testing.T) {
 	q := New()