Skip to content

Commit 8fdd175

Browse files
committed
add tests
1 parent 2216f70 commit 8fdd175

File tree

5 files changed

+44
-6
lines changed

5 files changed

+44
-6
lines changed

net.lecousin.core/src/test/java/net/lecousin/framework/core/test/io/TestReadWriteResizable.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ void testResizeSync() throws Exception {
7272
s = io.getPosition();
7373
if (s != 10) throw new Exception("Resize error: new position is " + s + ", expected is 10");
7474

75-
io.setSizeSync(0);
75+
io.setSizeAsync(0).blockThrow(0);
7676
s = io.getSizeSync();
7777
if (s != 0) throw new Exception("Resize error: new size is " + s + ", expected is 0");
7878
s = io.getPosition();

net.lecousin.core/src/test/java/net/lecousin/framework/core/test/io/TestReadableByteStream.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,12 @@ public void testReadableBufferedByteByByte() throws Exception {
7575
}
7676
if (io.read() != -1)
7777
throw new Exception("Remaining byte(s) at the end of the file");
78+
try {
79+
io.readByte();
80+
throw new AssertionError("EOFException expected");
81+
} catch (EOFException e) {
82+
// ok
83+
}
7884
io.close();
7985
}
8086

net.lecousin.core/src/test/java/net/lecousin/framework/core/tests/io/buffered/TestBufferedIOReadWriteResizableManyBuffers.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77
import net.lecousin.framework.core.test.io.TestReadWriteResizable;
88
import net.lecousin.framework.io.FileIO;
99
import net.lecousin.framework.io.buffering.BufferedIO;
10+
import net.lecousin.framework.memory.IMemoryManageable.FreeMemoryLevel;
11+
import net.lecousin.framework.memory.MemoryManager;
1012

1113
public class TestBufferedIOReadWriteResizableManyBuffers extends TestReadWriteResizable {
1214

@@ -21,6 +23,11 @@ protected BufferedIO.ReadWrite openReadWriteResizable() throws Exception {
2123
byte[] b = new byte[500];
2224
for (int i = 0; i < 9000000; i += 123456)
2325
io.readSync(i, ByteBuffer.wrap(b));
26+
MemoryManager.freeMemory(FreeMemoryLevel.EXPIRED_ONLY);
27+
for (int i = 0; i < 9000000; i += 112233)
28+
io.readSync(i, ByteBuffer.wrap(b));
29+
for (int i = 0; i < 9000000; i += 221100)
30+
io.writeSync(i, ByteBuffer.wrap(b));
2431
io.setSizeSync(0);
2532
return io;
2633
}

net.lecousin.core/src/test/java/net/lecousin/framework/core/tests/io/buffered/TestByteArrayIOWritableBufferedToFile.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import java.io.IOException;
66
import java.util.Collection;
77

8+
import org.junit.Assert;
89
import org.junit.runner.RunWith;
910
import org.junit.runners.Parameterized;
1011
import org.junit.runners.Parameterized.Parameters;
@@ -31,7 +32,10 @@ public TestByteArrayIOWritableBufferedToFile(byte[] testBuf, int nbBuf) {
3132
@Override
3233
protected IO.Writable.Buffered createWritableBufferedFromFile(File file) {
3334
this.file = file;
34-
return new ByteArrayIO("test");
35+
ByteArrayIO io = new ByteArrayIO(16, "test");
36+
io.toByteBuffer();
37+
Assert.assertEquals(16, io.getCapacity());
38+
return io;
3539
}
3640

3741
@Override

net.lecousin.core/src/test/java/net/lecousin/framework/core/tests/io/buffered/TestTwoBuffersIOReadableSeekable.java

Lines changed: 25 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import java.io.File;
44
import java.util.Collection;
5+
import java.util.LinkedList;
56

67
import org.junit.runner.RunWith;
78
import org.junit.runners.Parameterized;
@@ -15,18 +16,38 @@
1516
@RunWith(Parameterized.class)
1617
public class TestTwoBuffersIOReadableSeekable extends TestReadableSeekable {
1718

18-
@Parameters(name = "nbBuf = {2}")
19+
@Parameters(name = "nbBuf = {2}, test: {3}")
1920
public static Collection<Object[]> parameters() {
20-
return TestIO.UsingGeneratedTestFiles.generateTestCases(false);
21+
Collection<Object[]> base = TestIO.UsingGeneratedTestFiles.generateTestCases(false);
22+
LinkedList<Object[]> list = new LinkedList<>();
23+
for (Object[] params : base) {
24+
list.add(createParams(params, 0));
25+
list.add(createParams(params, 1));
26+
list.add(createParams(params, 2));
27+
}
28+
return list;
29+
}
30+
private static Object[] createParams(Object[] original, int test) {
31+
return new Object[] { original[0], original[1], original[2], Integer.valueOf(test) };
2132
}
2233

23-
public TestTwoBuffersIOReadableSeekable(File testFile, byte[] testBuf, int nbBuf) {
34+
public TestTwoBuffersIOReadableSeekable(File testFile, byte[] testBuf, int nbBuf, int test) {
2435
super(testFile, testBuf, nbBuf);
36+
this.test = test;
2537
}
2638

39+
protected int test;
40+
2741
@Override
2842
protected TwoBuffersIO createReadableSeekableFromFile(FileIO.ReadOnly file, long fileSize) {
29-
return new TwoBuffersIO(file, 40000, (int)(fileSize - 40000));
43+
if (fileSize == 0)
44+
return new TwoBuffersIO(file, 1024, 0);
45+
switch (test) {
46+
default:
47+
case 0: return new TwoBuffersIO(file, 40000, (int)(fileSize - 40000));
48+
case 1: return new TwoBuffersIO(file, 12, (int)(fileSize - 12));
49+
case 2: return new TwoBuffersIO(file, (int)(fileSize - 12), 12);
50+
}
3051
}
3152

3253
}

0 commit comments

Comments
 (0)