ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/src/test/tck/LinkedBlockingQueue8Test.java
Revision: 1.1
Committed: Sat Dec 10 18:11:05 2016 UTC (7 years, 4 months ago) by jsr166
Branch: MAIN
Log Message:
add spliterator tests for LinkedBlockingDeque, LinkedBlockingQueue

File Contents

# Content
1 /*
2 * Written by Doug Lea and Martin Buchholz with assistance from
3 * members of JCP JSR-166 Expert Group and released to the public
4 * domain, as explained at
5 * http://creativecommons.org/publicdomain/zero/1.0/
6 */
7
8 import java.util.concurrent.LinkedBlockingQueue;
9 import java.util.Spliterator;
10
11 import junit.framework.Test;
12 import junit.framework.TestSuite;
13
14 public class LinkedBlockingQueue8Test extends JSR166TestCase {
15 public static void main(String[] args) {
16 main(suite(), args);
17 }
18
19 public static Test suite() {
20 return newTestSuite(LinkedBlockingQueue8Test.class);
21 }
22
23 /**
24 * Spliterator.getComparator always throws IllegalStateException
25 */
26 public void testSpliterator_getComparator() {
27 assertThrows(IllegalStateException.class,
28 () -> new LinkedBlockingQueue().spliterator().getComparator());
29 }
30
31 /**
32 * Spliterator characteristics are as advertised
33 */
34 public void testSpliterator_characteristics() {
35 LinkedBlockingQueue q = new LinkedBlockingQueue();
36 Spliterator s = q.spliterator();
37 int characteristics = s.characteristics();
38 int required = Spliterator.CONCURRENT
39 | Spliterator.NONNULL
40 | Spliterator.ORDERED;
41 assertEquals(required, characteristics & required);
42 assertTrue(s.hasCharacteristics(required));
43 assertEquals(0, characteristics
44 & (Spliterator.DISTINCT
45 | Spliterator.IMMUTABLE
46 | Spliterator.SORTED));
47 }
48
49 }