Skip to content

Commit db76601

Browse files
committed
add tests
1 parent 69bed3b commit db76601

File tree

8 files changed

+151
-20
lines changed

8 files changed

+151
-20
lines changed
Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,20 @@
1-
package net.lecousin.framework.util;
2-
3-
/** Utility methods on objects. */
4-
public class ObjectUtil {
5-
6-
/** Return true if both are null, or if they are equals. */
7-
public static boolean equalsOrNull(Object o1, Object o2) {
8-
if (o1 == null) return o2 == null;
9-
return o1.equals(o2);
10-
}
11-
12-
/** Return "null" if o is null, else call the method toString on the object. */
13-
public static String toString(Object o) {
14-
if (o == null) return "null";
15-
return o.toString();
16-
}
17-
18-
}
1+
package net.lecousin.framework.util;
2+
3+
/** Utility methods on objects. */
4+
public final class ObjectUtil {
5+
6+
private ObjectUtil() { /* no instance */ }
7+
8+
/** Return true if both are null, or if they are equals. */
9+
public static boolean equalsOrNull(Object o1, Object o2) {
10+
if (o1 == null) return o2 == null;
11+
return o1.equals(o2);
12+
}
13+
14+
/** Return "null" if o is null, else call the method toString on the object. */
15+
public static String toString(Object o) {
16+
if (o == null) return "null";
17+
return o.toString();
18+
}
19+
20+
}
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
package net.lecousin.framework.core.tests.progress;
2+
3+
import net.lecousin.framework.concurrent.CancelException;
4+
import net.lecousin.framework.core.test.LCCoreAbstractTest;
5+
import net.lecousin.framework.progress.FakeWorkProgress;
6+
7+
import org.junit.Test;
8+
9+
public class TestFakeWorkProgress extends LCCoreAbstractTest {
10+
11+
@Test(timeout=30000)
12+
public void test() {
13+
FakeWorkProgress p = new FakeWorkProgress();
14+
p.getPosition();
15+
p.getAmount();
16+
p.getRemainingWork();
17+
p.getText();
18+
p.getSubText();
19+
p.progress(0);
20+
p.done();
21+
p.error(new Exception());
22+
p.cancel(new CancelException("test"));
23+
p.getSynch();
24+
p.setAmount(0);
25+
p.setPosition(0);
26+
p.setText("");
27+
p.setSubText("");
28+
p.listen(() -> {});
29+
p.unlisten(() -> {});
30+
}
31+
32+
}

net.lecousin.core/src/test/java/net/lecousin/framework/core/tests/progress/TestMultiTaskProgress.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,14 @@ public void test() {
3939
Assert.assertEquals(300, t3.getAmount());
4040
Assert.assertEquals(300, t3.getPosition());
4141
Assert.assertEquals(0, t3.getRemainingWork());
42+
t3.setAmount(600);
43+
t3.setPosition(400);
44+
Assert.assertEquals(1400, p.getAmount());
45+
Assert.assertEquals(450, p.getPosition());
46+
Assert.assertEquals(950, p.getRemainingWork());
47+
Assert.assertEquals(600, t3.getAmount());
48+
Assert.assertEquals(400, t3.getPosition());
49+
Assert.assertEquals(200, t3.getRemainingWork());
4250
}
4351

4452
}

net.lecousin.core/src/test/java/net/lecousin/framework/core/tests/progress/TestWorkProgressImpl.java

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package net.lecousin.framework.core.tests.progress;
22

3+
import net.lecousin.framework.concurrent.CancelException;
34
import net.lecousin.framework.concurrent.synch.SynchronizationPoint;
45
import net.lecousin.framework.core.test.LCCoreAbstractTest;
56
import net.lecousin.framework.progress.WorkProgressImpl;
@@ -55,13 +56,43 @@ public void test() throws Exception {
5556
changed.blockThrow(0);
5657
changed.reset();
5758
p.unlisten(listener);
59+
p.unlisten(listener);
60+
Runnable listener1 = () -> {};
61+
Runnable listener2 = () -> {};
62+
p.listen(listener1);
63+
p.listen(listener2);
64+
p.unlisten(listener1);
65+
p.unlisten(listener2);
5866
p.progress(1);
5967
Assert.assertEquals(1000, p.getAmount());
6068
Assert.assertEquals(699, p.getRemainingWork());
6169
Assert.assertEquals(301, p.getPosition());
6270
changed.blockThrow(500);
6371
Assert.assertFalse(changed.isUnblocked());
72+
p.setAmount(900);
73+
Assert.assertEquals(900, p.getAmount());
74+
Assert.assertEquals(599, p.getRemainingWork());
75+
Assert.assertEquals(301, p.getPosition());
76+
p.setAmount(900);
77+
Assert.assertEquals(900, p.getAmount());
78+
Assert.assertEquals(599, p.getRemainingWork());
79+
Assert.assertEquals(301, p.getPosition());
80+
p.setPosition(400);
81+
Assert.assertEquals(900, p.getAmount());
82+
Assert.assertEquals(500, p.getRemainingWork());
83+
Assert.assertEquals(400, p.getPosition());
84+
p.setPosition(400);
85+
Assert.assertEquals(900, p.getAmount());
86+
Assert.assertEquals(500, p.getRemainingWork());
87+
Assert.assertEquals(400, p.getPosition());
88+
p.progress(0);
89+
Assert.assertEquals(900, p.getAmount());
90+
Assert.assertEquals(500, p.getRemainingWork());
91+
Assert.assertEquals(400, p.getPosition());
6492
p.done();
93+
p.error(new Exception());
94+
p.cancel(new CancelException(new Exception()));
95+
p.getSynch();
6596
}
6697

6798
}
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
package net.lecousin.framework.core.tests.util;
2+
3+
import net.lecousin.framework.core.test.LCCoreAbstractTest;
4+
import net.lecousin.framework.util.ObjectUtil;
5+
6+
import org.junit.Assert;
7+
import org.junit.Test;
8+
9+
public class TestObjectUtil extends LCCoreAbstractTest {
10+
11+
@Test(timeout=30000)
12+
public void test() {
13+
Assert.assertTrue(ObjectUtil.equalsOrNull(null, null));
14+
Assert.assertFalse(ObjectUtil.equalsOrNull(new Object(), null));
15+
Assert.assertFalse(ObjectUtil.equalsOrNull(null, new Object()));
16+
Assert.assertTrue(ObjectUtil.equalsOrNull(Integer.valueOf(1), Integer.valueOf(1)));
17+
Assert.assertFalse(ObjectUtil.equalsOrNull(Integer.valueOf(1), Integer.valueOf(2)));
18+
19+
Assert.assertEquals("null", ObjectUtil.toString(null));
20+
Assert.assertEquals("1", ObjectUtil.toString(Integer.valueOf(1)));
21+
}
22+
23+
}

net.lecousin.core/src/test/java/net/lecousin/framework/core/tests/util/TestPair.java

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
package net.lecousin.framework.core.tests.util;
22

3+
import java.io.ByteArrayInputStream;
4+
import java.io.ByteArrayOutputStream;
5+
import java.io.ObjectInputStream;
6+
import java.io.ObjectOutputStream;
7+
38
import net.lecousin.framework.core.test.LCCoreAbstractTest;
49
import net.lecousin.framework.util.Pair;
510

@@ -9,7 +14,7 @@
914
public class TestPair extends LCCoreAbstractTest {
1015

1116
@Test
12-
public void test() {
17+
public void test() throws Exception {
1318
Pair<Object, Object> p;
1419
p = new Pair<>(Integer.valueOf(10), Integer.valueOf(20));
1520
Assert.assertEquals(Integer.valueOf(10), p.getValue1());
@@ -27,6 +32,15 @@ public void test() {
2732
p.toString();
2833
new Pair<>(null, null).hashCode();
2934
new Pair<>(null, null).toString();
35+
36+
ByteArrayOutputStream out = new ByteArrayOutputStream();
37+
ObjectOutputStream oout = new ObjectOutputStream(out);
38+
oout.writeObject(new Pair<>(Integer.valueOf(10), "test"));
39+
oout.close();
40+
ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray());
41+
ObjectInputStream oin = new ObjectInputStream(in);
42+
Assert.assertEquals(new Pair<>(Integer.valueOf(10), "test"), oin.readObject());
43+
oin.close();
3044
}
3145

3246
}
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
package net.lecousin.framework.core.tests.util;
2+
3+
import net.lecousin.framework.core.test.LCCoreAbstractTest;
4+
import net.lecousin.framework.util.RunnableWithData;
5+
6+
import org.junit.Assert;
7+
import org.junit.Test;
8+
9+
public class TestRunnableWithData extends LCCoreAbstractTest {
10+
11+
@Test(timeout=30000)
12+
public void test() {
13+
RunnableWithData<String> r = new RunnableWithData<String>("test") {
14+
@Override
15+
public void run() {
16+
}
17+
};
18+
Assert.assertEquals("test", r.getData());
19+
}
20+
21+
}

net.lecousin.core/src/test/java/net/lecousin/framework/core/tests/util/TestTriple.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
public class TestTriple extends LCCoreAbstractTest {
1010

1111
@Test
12-
public void test() {
12+
public void test() throws Exception {
1313
Triple<Object, Object, Object> t;
1414
t = new Triple<>(Integer.valueOf(10), Integer.valueOf(20), Integer.valueOf(30));
1515
Assert.assertEquals(Integer.valueOf(10), t.getValue1());

0 commit comments

Comments
 (0)