Fix eclipse/checkstyle warnings
[yangtools.git] / common / util / src / test / java / org / opendaylight / yangtools / util / concurrent / TrackingLinkedBlockingQueueTest.java
1 /*
2  * Copyright (c) 2014 Brocade Communications Systems, Inc. and others.  All rights reserved.
3  *
4  * This program and the accompanying materials are made available under the
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6  * and is available at http://www.eclipse.org/legal/epl-v10.html
7  */
8
9 package org.opendaylight.yangtools.util.concurrent;
10
11 import static org.junit.Assert.assertEquals;
12 import static org.junit.Assert.assertFalse;
13 import static org.junit.Assert.assertTrue;
14 import static org.junit.Assert.fail;
15
16 import java.util.Arrays;
17 import java.util.concurrent.TimeUnit;
18 import org.junit.Test;
19
20 /**
21  * Unit tests for TrackingLinkedBlockingQueue.
22  *
23  * @author Thomas Pantelis
24  */
25 public class TrackingLinkedBlockingQueueTest {
26
27     @Test
28     public void testOffer() throws InterruptedException {
29         TrackingLinkedBlockingQueue<String> queue = new TrackingLinkedBlockingQueue<>(2);
30
31         assertTrue("offer", queue.offer("1"));
32         assertEquals("getLargestQueueSize", 1, queue.getLargestQueueSize());
33         assertEquals("size", 1, queue.size());
34
35         assertTrue("offer", queue.offer("2", 1, TimeUnit.MILLISECONDS));
36         assertEquals("getLargestQueueSize", 2, queue.getLargestQueueSize());
37         assertEquals("size", 2, queue.size());
38
39         assertFalse("offer", queue.offer("3"));
40         assertEquals("getLargestQueueSize", 2, queue.getLargestQueueSize());
41         assertEquals("size", 2, queue.size());
42
43         assertFalse("offer", queue.offer("4", 1, TimeUnit.MILLISECONDS));
44         assertEquals("getLargestQueueSize", 2, queue.getLargestQueueSize());
45         assertEquals("size", 2, queue.size());
46     }
47
48     @Test
49     public void testPut() throws InterruptedException {
50         TrackingLinkedBlockingQueue<String> queue = new TrackingLinkedBlockingQueue<>();
51
52         queue.put("1");
53         assertEquals("getLargestQueueSize", 1, queue.getLargestQueueSize());
54         assertEquals("size", 1, queue.size());
55
56         queue.put("2");
57         assertEquals("getLargestQueueSize", 2, queue.getLargestQueueSize());
58         assertEquals("size", 2, queue.size());
59     }
60
61     @Test
62     public void testAdd() {
63         TrackingLinkedBlockingQueue<String> queue = new TrackingLinkedBlockingQueue<>(2);
64
65         assertTrue("add", queue.add("1"));
66         assertEquals("getLargestQueueSize", 1, queue.getLargestQueueSize());
67         assertEquals("size", 1, queue.size());
68
69         assertTrue("add", queue.add("2"));
70         assertEquals("getLargestQueueSize", 2, queue.getLargestQueueSize());
71         assertEquals("size", 2, queue.size());
72
73         try {
74             queue.add("3");
75             fail("Expected IllegalStateException");
76         } catch (IllegalStateException e) {
77             // Expected
78             assertEquals("getLargestQueueSize", 2, queue.getLargestQueueSize());
79             assertEquals("size", 2, queue.size());
80         }
81     }
82
83     @Test
84     public void testAddAll() {
85         TrackingLinkedBlockingQueue<String> queue = new TrackingLinkedBlockingQueue<>(3);
86
87         queue.addAll(Arrays.asList("1", "2"));
88         assertEquals("getLargestQueueSize", 2, queue.getLargestQueueSize());
89         assertEquals("size", 2, queue.size());
90
91         try {
92             queue.addAll(Arrays.asList("3", "4"));
93             fail("Expected IllegalStateException");
94         } catch (IllegalStateException e) {
95             // Expected
96             assertEquals("getLargestQueueSize", 3, queue.getLargestQueueSize());
97             assertEquals("size", 3, queue.size());
98         }
99     }
100 }