11package com .thealgorithms .datastructures .queues ;
22
3- import static org .junit .jupiter .api .Assertions .assertEquals ;
4- import static org .junit .jupiter .api .Assertions .assertFalse ;
5- import static org .junit .jupiter .api .Assertions .assertNull ;
6- import static org .junit .jupiter .api .Assertions .assertThrows ;
7- import static org .junit .jupiter .api .Assertions .assertTrue ;
8-
93import java .util .ArrayList ;
104import java .util .List ;
115import java .util .concurrent .CountDownLatch ;
126import java .util .concurrent .ExecutorService ;
137import java .util .concurrent .Executors ;
148import java .util .concurrent .TimeUnit ;
159import java .util .concurrent .atomic .AtomicInteger ;
10+ import org .junit .jupiter .api .Assertions ;
1611import org .junit .jupiter .api .Test ;
1712
1813public class ThreadSafeQueueTest {
@@ -24,85 +19,85 @@ public void testEnqueueDequeue() throws InterruptedException {
2419 queue .enqueue (2 );
2520 queue .enqueue (3 );
2621
27- assertEquals (3 , queue .size ());
28- assertEquals (1 , queue .dequeue ());
29- assertEquals (2 , queue .dequeue ());
30- assertEquals (3 , queue .dequeue ());
31- assertTrue (queue .isEmpty ());
22+ Assertions . assertEquals (3 , queue .size ());
23+ Assertions . assertEquals (1 , queue .dequeue ());
24+ Assertions . assertEquals (2 , queue .dequeue ());
25+ Assertions . assertEquals (3 , queue .dequeue ());
26+ Assertions . assertTrue (queue .isEmpty ());
3227 }
3328
3429 @ Test
3530 public void testOfferPoll () {
3631 ThreadSafeQueue <String > queue = new ThreadSafeQueue <>(2 );
37- assertTrue (queue .offer ("a" ));
38- assertTrue (queue .offer ("b" ));
39- assertFalse (queue .offer ("c" ));
32+ Assertions . assertTrue (queue .offer ("a" ));
33+ Assertions . assertTrue (queue .offer ("b" ));
34+ Assertions . assertFalse (queue .offer ("c" ));
4035
41- assertEquals ("a" , queue .poll ());
42- assertEquals ("b" , queue .poll ());
43- assertNull (queue .poll ());
36+ Assertions . assertEquals ("a" , queue .poll ());
37+ Assertions . assertEquals ("b" , queue .poll ());
38+ Assertions . assertNull (queue .poll ());
4439 }
4540
4641 @ Test
4742 public void testOfferRejectsWhenFull () {
4843 ThreadSafeQueue <Integer > queue = new ThreadSafeQueue <>(2 );
49- assertTrue (queue .offer (1 ));
50- assertTrue (queue .offer (2 ));
51- assertFalse (queue .offer (3 ));
52- assertEquals (2 , queue .size ());
44+ Assertions . assertTrue (queue .offer (1 ));
45+ Assertions . assertTrue (queue .offer (2 ));
46+ Assertions . assertFalse (queue .offer (3 ));
47+ Assertions . assertEquals (2 , queue .size ());
5348 }
5449
5550 @ Test
5651 public void testPollReturnsNullWhenEmpty () {
5752 ThreadSafeQueue <Integer > queue = new ThreadSafeQueue <>(5 );
58- assertNull (queue .poll ());
53+ Assertions . assertNull (queue .poll ());
5954 }
6055
6156 @ Test
6257 public void testEnqueueNullThrows () {
6358 ThreadSafeQueue <String > queue = new ThreadSafeQueue <>(5 );
64- assertThrows (IllegalArgumentException .class , () -> queue .enqueue (null ));
59+ Assertions . assertThrows (IllegalArgumentException .class , () -> queue .enqueue (null ));
6560 }
6661
6762 @ Test
6863 public void testOfferNullThrows () {
6964 ThreadSafeQueue <String > queue = new ThreadSafeQueue <>(5 );
70- assertThrows (IllegalArgumentException .class , () -> queue .offer (null ));
65+ Assertions . assertThrows (IllegalArgumentException .class , () -> queue .offer (null ));
7166 }
7267
7368 @ Test
7469 public void testInvalidCapacityThrows () {
75- assertThrows (IllegalArgumentException .class , () -> new ThreadSafeQueue <>(0 ));
76- assertThrows (IllegalArgumentException .class , () -> new ThreadSafeQueue <>(-1 ));
70+ Assertions . assertThrows (IllegalArgumentException .class , () -> new ThreadSafeQueue <>(0 ));
71+ Assertions . assertThrows (IllegalArgumentException .class , () -> new ThreadSafeQueue <>(-1 ));
7772 }
7873
7974 @ Test
8075 public void testIsEmptyAndIsFull () throws InterruptedException {
8176 ThreadSafeQueue <Integer > queue = new ThreadSafeQueue <>(2 );
82- assertTrue (queue .isEmpty ());
83- assertFalse (queue .isFull ());
77+ Assertions . assertTrue (queue .isEmpty ());
78+ Assertions . assertFalse (queue .isFull ());
8479
8580 queue .enqueue (1 );
86- assertFalse (queue .isEmpty ());
87- assertFalse (queue .isFull ());
81+ Assertions . assertFalse (queue .isEmpty ());
82+ Assertions . assertFalse (queue .isFull ());
8883
8984 queue .enqueue (2 );
90- assertFalse (queue .isEmpty ());
91- assertTrue (queue .isFull ());
85+ Assertions . assertFalse (queue .isEmpty ());
86+ Assertions . assertTrue (queue .isFull ());
9287
9388 queue .dequeue ();
94- assertFalse (queue .isEmpty ());
95- assertFalse (queue .isFull ());
89+ Assertions . assertFalse (queue .isEmpty ());
90+ Assertions . assertFalse (queue .isFull ());
9691
9792 queue .dequeue ();
98- assertTrue (queue .isEmpty ());
99- assertFalse (queue .isFull ());
93+ Assertions . assertTrue (queue .isEmpty ());
94+ Assertions . assertFalse (queue .isFull ());
10095 }
10196
10297 @ Test
10398 public void testCapacity () {
10499 ThreadSafeQueue <Integer > queue = new ThreadSafeQueue <>(10 );
105- assertEquals (10 , queue .capacity ());
100+ Assertions . assertEquals (10 , queue .capacity ());
106101 }
107102
108103 @ Test
@@ -112,15 +107,15 @@ public void testCircularBufferWrapAround() throws InterruptedException {
112107 queue .enqueue (2 );
113108 queue .enqueue (3 );
114109
115- assertEquals (1 , queue .dequeue ());
116- assertEquals (2 , queue .dequeue ());
110+ Assertions . assertEquals (1 , queue .dequeue ());
111+ Assertions . assertEquals (2 , queue .dequeue ());
117112
118113 queue .enqueue (4 );
119114 queue .enqueue (5 );
120115
121- assertEquals (3 , queue .dequeue ());
122- assertEquals (4 , queue .dequeue ());
123- assertEquals (5 , queue .dequeue ());
116+ Assertions . assertEquals (3 , queue .dequeue ());
117+ Assertions . assertEquals (4 , queue .dequeue ());
118+ Assertions . assertEquals (5 , queue .dequeue ());
124119 }
125120
126121 @ Test
@@ -165,12 +160,12 @@ public void testMultipleProducersSingleConsumer() throws InterruptedException {
165160 });
166161 consumerThread .start ();
167162
168- assertTrue (doneLatch .await (10 , TimeUnit .SECONDS ));
163+ Assertions . assertTrue (doneLatch .await (10 , TimeUnit .SECONDS ));
169164 consumerThread .join (5000 );
170165
171- assertEquals (totalItems , results .size ());
166+ Assertions . assertEquals (totalItems , results .size ());
172167 executor .shutdown ();
173- assertTrue (executor .awaitTermination (5 , TimeUnit .SECONDS ));
168+ Assertions . assertTrue (executor .awaitTermination (5 , TimeUnit .SECONDS ));
174169 }
175170
176171 @ Test
@@ -208,10 +203,10 @@ public void testSingleProducerMultipleConsumers() throws InterruptedException {
208203 });
209204 }
210205
211- assertTrue (doneLatch .await (10 , TimeUnit .SECONDS ));
212- assertEquals (totalItems , consumedCount .get ());
206+ Assertions . assertTrue (doneLatch .await (10 , TimeUnit .SECONDS ));
207+ Assertions . assertEquals (totalItems , consumedCount .get ());
213208 executor .shutdown ();
214- assertTrue (executor .awaitTermination (5 , TimeUnit .SECONDS ));
209+ Assertions . assertTrue (executor .awaitTermination (5 , TimeUnit .SECONDS ));
215210 }
216211
217212 @ Test
@@ -231,11 +226,11 @@ public void testBlockingEnqueueWhenFull() throws InterruptedException {
231226 producer .start ();
232227
233228 Thread .sleep (100 );
234- assertEquals (1 , queue .dequeue ());
229+ Assertions . assertEquals (1 , queue .dequeue ());
235230
236231 producer .join (2000 );
237- assertEquals (1 , blockedCount .get ());
238- assertEquals (2 , queue .dequeue ());
232+ Assertions . assertEquals (1 , blockedCount .get ());
233+ Assertions . assertEquals (2 , queue .dequeue ());
239234 }
240235
241236 @ Test
@@ -256,7 +251,7 @@ public void testBlockingDequeueWhenEmpty() throws InterruptedException {
256251 queue .enqueue (42 );
257252
258253 consumer .join (2000 );
259- assertEquals (42 , result .get ());
254+ Assertions . assertEquals (42 , result .get ());
260255 }
261256
262257 @ Test
@@ -291,9 +286,9 @@ public void testStressConcurrentAccess() throws InterruptedException {
291286 });
292287 }
293288
294- assertTrue (latch .await (10 , TimeUnit .SECONDS ));
295- assertTrue (enqueueCount .get () >= dequeueCount .get ());
296- assertEquals (enqueueCount .get () - dequeueCount .get (), queue .size ());
289+ Assertions . assertTrue (latch .await (10 , TimeUnit .SECONDS ));
290+ Assertions . assertTrue (enqueueCount .get () >= dequeueCount .get ());
291+ Assertions . assertEquals (enqueueCount .get () - dequeueCount .get (), queue .size ());
297292 executor .shutdown ();
298293 executor .awaitTermination (5 , TimeUnit .SECONDS );
299294 }
0 commit comments