This is an automated email from the ASF dual-hosted git repository.
ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-collections.git
The following commit(s) were added to refs/heads/master by this push:
new 99f65a305 Fix generics in IteratorChain.IteratorChain(Collection)
99f65a305 is described below
commit 99f65a305ef29c0af24d8c67e013d3612f3f4877
Author: Gary Gregory <[email protected]>
AuthorDate: Sat Oct 19 10:13:42 2024 -0400
Fix generics in IteratorChain.IteratorChain(Collection)
---
src/changes/changes.xml | 1 +
.../commons/collections4/iterators/IteratorChain.java | 2 +-
.../commons/collections4/iterators/IteratorChainTest.java | 15 +++++++++++++++
3 files changed, 17 insertions(+), 1 deletion(-)
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index dff6b1825..8c18f9fa3 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -38,6 +38,7 @@
<action type="fix" dev="ggregory" due-to="Gary Gregory, Alex
Herbert">BloomFilterExtractor.flatten() should throw an exception instead of
returning null.</action>
<action type="fix" dev="ggregory" due-to="Gary Gregory, Claude
Warren">Improve WrappedBloomFilterTest. All tests now assert copy() the same
way.</action>
<action type="fix" dev="ggregory" due-to="Gary Gregory, Daniele"
issue="COLLECTIONS-860">Javadoc CollectionBag.add* to throw
ClassCastException.</action>
+ <action type="fix" dev="ggregory" due-to="Gary Gregory">Fix generics in
IteratorChain.IteratorChain(Collection).</action>
<!-- ADD -->
<action type="add" dev="ggregory" due-to="Gary
Gregory">LayerManager.Builder implements Supplier.</action>
<action type="add" dev="ggregory" due-to="Gary Gregory, hemanth0525">Add
CollectionUtils.duplicateList(Collection).</action>
diff --git
a/src/main/java/org/apache/commons/collections4/iterators/IteratorChain.java
b/src/main/java/org/apache/commons/collections4/iterators/IteratorChain.java
index fe1ab2cea..bf4661c9c 100644
--- a/src/main/java/org/apache/commons/collections4/iterators/IteratorChain.java
+++ b/src/main/java/org/apache/commons/collections4/iterators/IteratorChain.java
@@ -97,7 +97,7 @@ public class IteratorChain<E> implements Iterator<E> {
* @throws ClassCastException if iterators collection doesn't contain an
* iterator
*/
- public IteratorChain(final Collection<Iterator<? extends E>>
iteratorChain) {
+ public IteratorChain(final Collection<? extends Iterator<? extends E>>
iteratorChain) {
for (final Iterator<? extends E> iterator : iteratorChain) {
addIterator(iterator);
}
diff --git
a/src/test/java/org/apache/commons/collections4/iterators/IteratorChainTest.java
b/src/test/java/org/apache/commons/collections4/iterators/IteratorChainTest.java
index 0654fec36..022caf71b 100644
---
a/src/test/java/org/apache/commons/collections4/iterators/IteratorChainTest.java
+++
b/src/test/java/org/apache/commons/collections4/iterators/IteratorChainTest.java
@@ -137,6 +137,21 @@ public class IteratorChainTest extends
AbstractIteratorTest<String> {
}
}
+ @Test
+ public void testConstructList() {
+ final List<Iterator<String>> list = new ArrayList<>();
+ list.add(list1.iterator());
+ list.add(list2.iterator());
+ list.add(list3.iterator());
+ final List<String> expected = new ArrayList<>(list1);
+ expected.addAll(list2);
+ expected.addAll(list3);
+ final IteratorChain<String> iter = new IteratorChain<>(list);
+ final List<String> actual = new ArrayList<>();
+ iter.forEachRemaining(actual::add);
+ assertEquals(actual, expected);
+ }
+
@Test
@Override
public void testRemove() {