Skip to content

Commit 0d164eb

Browse files
Add simple test for StreamIterator (#490)
* Add simple test for StreamIterator * Fix build --------- Co-authored-by: Gary Gregory <garydgregory@users.noreply.github.com>
1 parent 893935e commit 0d164eb

1 file changed

Lines changed: 43 additions & 0 deletions

File tree

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
/*
2+
* Licensed to the Apache Software Foundation (ASF) under one or more
3+
* contributor license agreements. See the NOTICE file distributed with
4+
* this work for additional information regarding copyright ownership.
5+
* The ASF licenses this file to You under the Apache License, Version 2.0
6+
* (the "License"); you may not use this file except in compliance with
7+
* the License. You may obtain a copy of the License at
8+
*
9+
* http://www.apache.org/licenses/LICENSE-2.0
10+
*
11+
* Unless required by applicable law or agreed to in writing, software
12+
* distributed under the License is distributed on an "AS IS" BASIS,
13+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
* See the License for the specific language governing permissions and
15+
* limitations under the License.
16+
*/
17+
18+
package org.apache.commons.io;
19+
20+
import org.junit.jupiter.api.Test;
21+
22+
import java.util.Iterator;
23+
import java.util.concurrent.atomic.AtomicBoolean;
24+
import java.util.stream.Stream;
25+
26+
import static org.junit.jupiter.api.Assertions.assertEquals;
27+
import static org.junit.jupiter.api.Assertions.assertTrue;
28+
29+
public class StreamIteratorTest {
30+
@Test
31+
public void testStreamIterator() {
32+
final AtomicBoolean closed = new AtomicBoolean();
33+
final Iterator<Integer> iter = StreamIterator.iterator(Stream.of(1, 2, 3).onClose(() -> closed.set(true)));
34+
int sum = 0;
35+
36+
while (iter.hasNext()) {
37+
sum += iter.next();
38+
}
39+
40+
assertEquals(6, sum);
41+
assertTrue(closed.get());
42+
}
43+
}

0 commit comments

Comments
 (0)