public void testOnlyOneOpen() throws Exception {
String testString = "abcdefgh";
final CharSource source = newCharSource(testString);
final int[] counter = new int[1];
CharSource reader = new CharSource() {
@Override
public Reader openStream() throws IOException {
if (counter[0]++ != 0) {
throw new IllegalStateException("More than one source open");
}
return new FilterReader(source.openStream()) {
@Override public void close() throws IOException {
super.close();
counter[0]--;
}
};
}
};
Reader joinedReader = CharSource.concat(reader, reader, reader).openStream();
String result = CharStreams.toString(joinedReader);
assertEquals(testString.length() * 3, result.length());
}
MultiReaderTest.java 文件源码
java
阅读 21
收藏 0
点赞 0
评论 0
项目:guava-mock
作者:
评论列表
文章目录