File tree Expand file tree Collapse file tree 1 file changed +43
-0
lines changed
pydatastructs/linear_data_structures/tests Expand file tree Collapse file tree 1 file changed +43
-0
lines changed Original file line number Diff line number Diff line change
1
+ import unittest
2
+ from pydatastructs .linear_data_structures .circular_buffer import CircularBuffer
3
+
4
+ class TestCircularBuffer (unittest .TestCase ):
5
+
6
+ def setUp (self ):
7
+ self .buffer = CircularBuffer (3 , dtype = int ) # Added dtype argument
8
+
9
+ def test_enqueue_dequeue (self ):
10
+ self .buffer .enqueue (1 )
11
+ self .buffer .enqueue (2 )
12
+ self .assertEqual (self .buffer .dequeue (), 1 )
13
+ self .assertEqual (self .buffer .dequeue (), 2 )
14
+
15
+ def test_is_empty (self ):
16
+ self .assertTrue (self .buffer .is_empty ())
17
+ self .buffer .enqueue (1 )
18
+ self .assertFalse (self .buffer .is_empty ())
19
+
20
+ def test_is_full (self ):
21
+ self .buffer .enqueue (1 )
22
+ self .buffer .enqueue (2 )
23
+ self .buffer .enqueue (3 )
24
+ self .assertTrue (self .buffer .is_full ())
25
+
26
+ def test_peek (self ):
27
+ self .buffer .enqueue (1 )
28
+ self .buffer .enqueue (2 )
29
+ self .assertEqual (self .buffer .peek (), 1 )
30
+
31
+ def test_enqueue_overflow (self ):
32
+ self .buffer .enqueue (1 )
33
+ self .buffer .enqueue (2 )
34
+ self .buffer .enqueue (3 )
35
+ with self .assertRaises (OverflowError ):
36
+ self .buffer .enqueue (4 )
37
+
38
+ def test_dequeue_underflow (self ):
39
+ with self .assertRaises (ValueError ):
40
+ self .buffer .dequeue ()
41
+
42
+ if __name__ == '__main__' :
43
+ unittest .main ()
You can’t perform that action at this time.
0 commit comments