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