Browse Source

Two more tests, just for completeness's sake

Evan Huus 11 years ago
parent
commit
5a1f0d394b
1 changed files with 33 additions and 0 deletions
  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()