1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.commons.collections4.bag;
18
19 import static org.junit.jupiter.api.Assertions.assertSame;
20 import static org.junit.jupiter.api.Assertions.assertThrows;
21 import static org.junit.jupiter.api.Assertions.assertTrue;
22
23 import java.util.Arrays;
24
25 import org.apache.commons.collections4.SortedBag;
26 import org.apache.commons.collections4.Unmodifiable;
27 import org.apache.commons.collections4.collection.AbstractCollectionTest;
28 import org.junit.jupiter.api.Test;
29
30
31
32
33
34 public class UnmodifiableSortedBagTest<E> extends AbstractSortedBagTest<E> {
35
36 public UnmodifiableSortedBagTest() {
37 super(UnmodifiableSortedBagTest.class.getSimpleName());
38 }
39
40 @Override
41 public SortedBag<E> getCollection() {
42 return super.getCollection();
43 }
44
45 @Override
46 public String getCompatibilityVersion() {
47 return "4";
48 }
49
50 @Override
51 public boolean isAddSupported() {
52 return false;
53 }
54
55 @Override
56 public boolean isNullSupported() {
57 return false;
58 }
59
60 @Override
61 public boolean isRemoveSupported() {
62 return false;
63 }
64
65 @Override
66 public SortedBag<E> makeFullCollection() {
67 final SortedBag<E> bag = new TreeBag<>();
68 bag.addAll(Arrays.asList(getFullElements()));
69 return UnmodifiableSortedBag.unmodifiableSortedBag(bag);
70 }
71
72 @Override
73 public SortedBag<E> makeObject() {
74 return UnmodifiableSortedBag.unmodifiableSortedBag(new TreeBag<>());
75 }
76
77 @Test
78 public void testDecorateFactory() {
79 final SortedBag<E> queue = makeFullCollection();
80 assertSame(queue, UnmodifiableSortedBag.unmodifiableSortedBag(queue));
81
82 assertThrows(NullPointerException.class, () -> UnmodifiableSortedBag.unmodifiableSortedBag(null));
83 }
84
85 @Test
86 public void testUnmodifiable() {
87 assertTrue(makeObject() instanceof Unmodifiable);
88 assertTrue(makeFullCollection() instanceof Unmodifiable);
89 }
90
91
92
93
94
95
96
97
98 }