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 public MapBackedSet2Test() {
34 super(MapBackedSet2Test.class.getSimpleName());
35 }
36
37 @Override
38 public Set<E> makeObject() {
39 return MapBackedSet.mapBackedSet(new LinkedMap<>());
40 }
41
42 @SuppressWarnings("unchecked")
43 protected Set<E> setupSet() {
44 final Set<E> set = makeObject();
45
46 for (int i = 0; i < 10; i++) {
47 set.add((E) Integer.toString(i));
48 }
49 return set;
50 }
51
52 @Test
53 @Override
54 public void testCanonicalEmptyCollectionExists() {
55 }
56
57 @Test
58 @Override
59 public void testCanonicalFullCollectionExists() {
60 }
61
62 @Test
63 @SuppressWarnings("unchecked")
64 public void testOrdering() {
65 final Set<E> set = setupSet();
66 Iterator<E> it = set.iterator();
67
68 for (int i = 0; i < 10; i++) {
69 assertEquals(Integer.toString(i), it.next(), "Sequence is wrong");
70 }
71
72 for (int i = 0; i < 10; i += 2) {
73 assertTrue(set.remove(Integer.toString(i)), "Must be able to remove int");
74 }
75
76 it = set.iterator();
77 for (int i = 1; i < 10; i += 2) {
78 assertEquals(Integer.toString(i), it.next(), "Sequence is wrong after remove ");
79 }
80
81 for (int i = 0; i < 10; i++) {
82 set.add((E) Integer.toString(i));
83 }
84
85 assertEquals(10, set.size(), "Size of set is wrong!");
86
87 it = set.iterator();
88 for (int i = 1; i < 10; i += 2) {
89 assertEquals(Integer.toString(i), it.next(), "Sequence is wrong");
90 }
91 for (int i = 0; i < 10; i += 2) {
92 assertEquals(Integer.toString(i), it.next(), "Sequence is wrong");
93 }
94 }
95
96 }