Merge pull request #3814 from iaforek/master
BAEL-1609 - CountingOutputStream
This commit is contained in:
commit
9b16156872
@ -59,7 +59,7 @@
|
|||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<!-- util -->
|
<!-- util -->
|
||||||
<guava.version>21.0</guava.version>
|
<guava.version>24.0-jre</guava.version>
|
||||||
<commons-lang3.version>3.5</commons-lang3.version>
|
<commons-lang3.version>3.5</commons-lang3.version>
|
||||||
<commons-collections4.version>4.1</commons-collections4.version>
|
<commons-collections4.version>4.1</commons-collections4.version>
|
||||||
|
|
||||||
|
@ -0,0 +1,29 @@
|
|||||||
|
package org.baeldung.guava;
|
||||||
|
|
||||||
|
import java.io.ByteArrayInputStream;
|
||||||
|
import java.io.ByteArrayOutputStream;
|
||||||
|
|
||||||
|
import org.junit.Test;
|
||||||
|
|
||||||
|
import com.google.common.io.CountingOutputStream;
|
||||||
|
|
||||||
|
public class GuavaCountingOutputStreamTest {
|
||||||
|
public static final int MAX = 5;
|
||||||
|
|
||||||
|
@Test(expected = RuntimeException.class)
|
||||||
|
public void givenData_whenCountReachesLimit_thenThrowException() throws Exception {
|
||||||
|
ByteArrayOutputStream out = new ByteArrayOutputStream();
|
||||||
|
CountingOutputStream cos = new CountingOutputStream(out);
|
||||||
|
|
||||||
|
byte[] data = new byte[1024];
|
||||||
|
ByteArrayInputStream in = new ByteArrayInputStream(data);
|
||||||
|
|
||||||
|
int b;
|
||||||
|
while ((b = in.read()) != -1) {
|
||||||
|
cos.write(b);
|
||||||
|
if (cos.getCount() >= MAX) {
|
||||||
|
throw new RuntimeException("Write limit reached");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user