MCPcopy Create free account
hub / github.com/TheAlgorithms/Go / TestCircularQueue

Function TestCircularQueue

structure/circularqueue/circularqueue_test.go:5–225  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

3import "testing"
4
5func TestCircularQueue(t *testing.T) {
6 t.Run("Size Check", func(t *testing.T) {
7 _, err := NewCircularQueue[int](-3)
8 if err == nil {
9 t.Errorf("Expected error, got nil")
10 }
11
12 queue, _ := NewCircularQueue[int](5)
13 expectedSize := 5
14 gotSize := queue.Size()
15 if gotSize != expectedSize {
16 t.Errorf("Expected size: %v, got: %v\n", expectedSize, gotSize)
17 }
18
19 if err := queue.Enqueue(1); err != nil {
20 t.Error(err)
21 }
22 if err := queue.Enqueue(2); err != nil {
23 t.Error(err)
24 }
25 if err := queue.Enqueue(3); err != nil {
26 t.Error(err)
27 }
28 if err := queue.Enqueue(4); err != nil {
29 t.Error(err)
30 }
31 if err := queue.Enqueue(5); err != nil {
32 t.Error(err)
33 }
34
35 err = queue.Enqueue(6)
36 if err == nil {
37 t.Errorf("Expected error, got nil")
38 }
39
40 expectedSize = 5
41 gotSize = queue.Size()
42 if gotSize != expectedSize {
43 t.Errorf("Expected size: %v, got: %v\n", expectedSize, gotSize)
44 }
45
46 if _, err := queue.Dequeue(); err != nil {
47 t.Error(err)
48 }
49 if _, err := queue.Dequeue(); err != nil {
50 t.Error(err)
51 }
52
53 err = queue.Enqueue(6)
54 if err != nil {
55 t.Errorf("Expected nil, got error: %v\n", err.Error())
56 }
57
58 expectedSize = 5
59 gotSize = queue.Size()
60 if gotSize != expectedSize {
61 t.Errorf("Expected size: %v, got: %v\n", expectedSize, gotSize)
62 }

Callers

nothing calls this directly

Calls 6

SizeMethod · 0.45
EnqueueMethod · 0.45
DequeueMethod · 0.45
PeekMethod · 0.45
IsFullMethod · 0.45
IsEmptyMethod · 0.45

Tested by

no test coverage detected