1 32 package net.sf.retrotranslator.runtime.java.util; 33 34 import junit.framework.*; 35 import java.util.*; 36 37 40 public class _DequeJava6TestCase extends TestCase { 41 42 public void testAddFirst() throws Exception { 43 for (Deque deque : new Deque[] {new ArrayDeque(), new LinkedList()}) { 44 Collections.addAll(deque, "a", "b", "c"); 45 deque.addFirst("x"); 46 assertEquals("[x, a, b, c]", deque.toString()); 47 } 48 } 49 50 public void testAddLast() throws Exception { 51 for (Deque deque : new Deque[] {new ArrayDeque(), new LinkedList()}) { 52 Collections.addAll(deque, "a", "b", "c"); 53 deque.addLast("x"); 54 assertEquals("[a, b, c, x]", deque.toString()); 55 } 56 } 57 58 public void testDescendingIterator() throws Exception { 59 for (Deque deque : new Deque[] {new ArrayDeque(), new LinkedList()}) { 60 Collections.addAll(deque, "a", "b", "c"); 61 Iterator iterator = deque.descendingIterator(); 62 assertTrue(iterator.hasNext()); 63 assertEquals("c", iterator.next()); 64 assertTrue(iterator.hasNext()); 65 assertEquals("b", iterator.next()); 66 iterator.remove(); 67 assertTrue(iterator.hasNext()); 68 assertEquals("a", iterator.next()); 69 assertFalse(iterator.hasNext()); 70 assertEquals("[a, c]", deque.toString()); 71 } 72 } 73 74 public void testElement() throws Exception { 75 for (Deque deque : new Deque[] {new ArrayDeque(), new LinkedList()}) { 76 Collections.addAll(deque, "a", "b", "c"); 77 assertEquals("a", deque.element()); 78 assertEquals(3, deque.size()); 79 deque.clear(); 80 try { 81 deque.element(); 82 fail(); 83 } catch (NoSuchElementException e) { 84 } 86 } 87 } 88 89 public void testGetFirst() throws Exception { 90 for (Deque deque : new Deque[] {new ArrayDeque(), new LinkedList()}) { 91 Collections.addAll(deque, "a", "b", "c"); 92 assertEquals("a", deque.getFirst()); 93 assertEquals("[a, b, c]", deque.toString()); 94 deque.clear(); 95 try { 96 deque.getFirst(); 97 fail(); 98 } catch (NoSuchElementException e) { 99 } 101 } 102 } 103 104 public void testGetLast() throws Exception { 105 for (Deque deque : new Deque[] {new ArrayDeque(), new LinkedList()}) { 106 Collections.addAll(deque, "a", "b", "c"); 107 assertEquals("c", deque.getLast()); 108 assertEquals("[a, b, c]", deque.toString()); 109 deque.clear(); 110 try { 111 deque.getLast(); 112 fail(); 113 } catch (NoSuchElementException e) { 114 } 116 } 117 } 118 119 public void testOffer() throws Exception { 120 for (Deque deque : new Deque[] {new ArrayDeque(), new LinkedList()}) { 121 Collections.addAll(deque, "a", "b", "c"); 122 assertTrue(deque.offer("x")); 123 assertEquals(4, deque.size()); 124 assertEquals("x", deque.getLast()); 125 } 126 } 127 128 public void testOfferFirst() throws Exception { 129 for (Deque deque : new Deque[] {new ArrayDeque(), new LinkedList()}) { 130 Collections.addAll(deque, "a", "b", "c"); 131 assertTrue(deque.offerFirst("x")); 132 assertEquals(4, deque.size()); 133 assertEquals("x", deque.getFirst()); 134 } 135 } 136 137 public void testOfferLast() throws Exception { 138 for (Deque deque : new Deque[] {new ArrayDeque(), new LinkedList()}) { 139 Collections.addAll(deque, "a", "b", "c"); 140 assertTrue(deque.offerLast("x")); 141 assertEquals(4, deque.size()); 142 assertEquals("x", deque.getLast()); 143 } 144 } 145 146 public void testPeek() throws Exception { 147 for (Deque deque : new Deque[] {new ArrayDeque(), new LinkedList()}) { 148 Collections.addAll(deque, "a", "b", "c"); 149 assertEquals("a", deque.peek()); 150 assertEquals(3, deque.size()); 151 deque.clear(); 152 assertNull(deque.peek()); 153 } 154 } 155 156 public void testPeekFirst() throws Exception { 157 for (Deque deque : new Deque[] {new ArrayDeque(), new LinkedList()}) { 158 Collections.addAll(deque, "a", "b", "c"); 159 assertEquals("a", deque.peekFirst()); 160 assertEquals(3, deque.size()); 161 deque.clear(); 162 assertNull(deque.peekFirst()); 163 } 164 } 165 166 public void testPeekLast() throws Exception { 167 for (Deque deque : new Deque[] {new ArrayDeque(), new LinkedList()}) { 168 Collections.addAll(deque, "a", "b", "c"); 169 assertEquals("c", deque.peekLast()); 170 assertEquals(3, deque.size()); 171 deque.clear(); 172 assertNull(deque.peekLast()); 173 } 174 } 175 176 public void testPoll() throws Exception { 177 for (Deque deque : new Deque[] {new ArrayDeque(), new LinkedList()}) { 178 Collections.addAll(deque, "a", "b", "c"); 179 assertEquals("a", deque.poll()); 180 assertEquals(2, deque.size()); 181 deque.clear(); 182 assertNull(deque.poll()); 183 } 184 } 185 186 public void testPollFirst() throws Exception { 187 for (Deque deque : new Deque[] {new ArrayDeque(), new LinkedList()}) { 188 Collections.addAll(deque, "a", "b", "c"); 189 assertEquals("a", deque.pollFirst()); 190 assertEquals(2, deque.size()); 191 deque.clear(); 192 assertNull(deque.pollFirst()); 193 } 194 } 195 196 public void testPollLast() throws Exception { 197 for (Deque deque : new Deque[] {new ArrayDeque(), new LinkedList()}) { 198 Collections.addAll(deque, "a", "b", "c"); 199 assertEquals("c", deque.pollLast()); 200 assertEquals(2, deque.size()); 201 deque.clear(); 202 assertNull(deque.pollLast()); 203 } 204 } 205 206 public void testPop() throws Exception { 207 for (Deque deque : new Deque[] {new ArrayDeque(), new LinkedList()}) { 208 Collections.addAll(deque, "a", "b", "c"); 209 assertEquals("a", deque.pop()); 210 assertEquals(2, deque.size()); 211 deque.clear(); 212 try { 213 deque.pop(); 214 fail(); 215 } catch (NoSuchElementException e) { 216 } 218 } 219 } 220 221 public void testPush() throws Exception { 222 for (Deque deque : new Deque[] {new ArrayDeque(), new LinkedList()}) { 223 Collections.addAll(deque, "a", "b", "c"); 224 deque.push("x"); 225 assertEquals(4, deque.size()); 226 assertEquals("x", deque.getFirst()); 227 } 228 } 229 230 public void testRemove() throws Exception { 231 for (Deque deque : new Deque[] {new ArrayDeque(), new LinkedList()}) { 232 Collections.addAll(deque, "a", "b", "c"); 233 assertEquals("a", deque.remove()); 234 assertEquals(2, deque.size()); 235 deque.clear(); 236 try { 237 deque.remove(); 238 fail(); 239 } catch (NoSuchElementException e) { 240 } 242 } 243 } 244 245 public void testRemoveFirst() throws Exception { 246 for (Deque deque : new Deque[] {new ArrayDeque(), new LinkedList()}) { 247 Collections.addAll(deque, "a", "b", "c"); 248 assertEquals("a", deque.removeFirst()); 249 assertEquals("[b, c]", deque.toString()); 250 deque.clear(); 251 try { 252 deque.removeFirst(); 253 fail(); 254 } catch (NoSuchElementException e) { 255 } 257 } 258 } 259 260 public void testRemoveLast() throws Exception { 261 for (Deque deque : new Deque[] {new ArrayDeque(), new LinkedList()}) { 262 Collections.addAll(deque, "a", "b", "c"); 263 assertEquals("c", deque.removeLast()); 264 assertEquals("[a, b]", deque.toString()); 265 deque.clear(); 266 try { 267 deque.removeLast(); 268 fail(); 269 } catch (NoSuchElementException e) { 270 } 272 } 273 } 274 275 public void testRemoveFirstOccurrence() throws Exception { 276 for (Deque deque : new Deque[] {new ArrayDeque(), new LinkedList()}) { 277 Collections.addAll(deque, "a", "b", "c", "b", "d"); 278 assertTrue(deque.removeFirstOccurrence("b")); 279 assertEquals(4, deque.size()); 280 assertEquals("[a, c, b, d]", deque.toString()); 281 assertFalse(deque.removeFirstOccurrence("x")); 282 } 283 } 284 285 public void testRemoveLastOccurrence() throws Exception { 286 for (Deque deque : new Deque[] {new ArrayDeque(), new LinkedList()}) { 287 Collections.addAll(deque, "a", "b", "c", "b", "d"); 288 assertTrue(deque.removeLastOccurrence("b")); 289 assertEquals(4, deque.size()); 290 assertEquals("[a, b, c, d]", deque.toString()); 291 assertFalse(deque.removeLastOccurrence("x")); 292 } 293 } 294 295 } | Popular Tags |