1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.commons.collections4.set;
18
19 import static org.junit.jupiter.api.Assertions.assertEquals;
20 import static org.junit.jupiter.api.Assertions.assertTrue;
21
22 import java.util.Iterator;
23 import java.util.Set;
24
25 import org.apache.commons.collections4.map.LinkedMap;
26 import org.junit.jupiter.api.Test;
27
28
29
30
31 public class MapBackedSet2Test<E> extends AbstractSetTest<E> {
32
33 @Override
34 public Set<E> makeObject() {
35 return MapBackedSet.mapBackedSet(new LinkedMap<>());
36 }
37
38 @SuppressWarnings("unchecked")
39 protected Set<E> setupSet() {
40 final Set<E> set = makeObject();
41
42 for (int i = 0; i < 10; i++) {
43 set.add((E) Integer.toString(i));
44 }
45 return set;
46 }
47
48 @Test
49 @Override
50 public void testCanonicalEmptyCollectionExists() {
51 }
52
53 @Test
54 @Override
55 public void testCanonicalFullCollectionExists() {
56 }
57
58 @Test
59 @SuppressWarnings("unchecked")
60 public void testOrdering() {
61 final Set<E> set = setupSet();
62 Iterator<E> it = set.iterator();
63
64 for (int i = 0; i < 10; i++) {
65 assertEquals(Integer.toString(i), it.next(), "Sequence is wrong");
66 }
67
68 for (int i = 0; i < 10; i += 2) {
69 assertTrue(set.remove(Integer.toString(i)), "Must be able to remove int");
70 }
71
72 it = set.iterator();
73 for (int i = 1; i < 10; i += 2) {
74 assertEquals(Integer.toString(i), it.next(), "Sequence is wrong after remove ");
75 }
76
77 for (int i = 0; i < 10; i++) {
78 set.add((E) Integer.toString(i));
79 }
80
81 assertEquals(10, set.size(), "Size of set is wrong!");
82
83 it = set.iterator();
84 for (int i = 1; i < 10; i += 2) {
85 assertEquals(Integer.toString(i), it.next(), "Sequence is wrong");
86 }
87 for (int i = 0; i < 10; i += 2) {
88 assertEquals(Integer.toString(i), it.next(), "Sequence is wrong");
89 }
90 }
91
92 }