Skip to content

Commit b420cea

Browse files
committed
add tests
1 parent 54c8cf3 commit b420cea

File tree

4 files changed

+106
-0
lines changed

4 files changed

+106
-0
lines changed
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
package net.lecousin.framework.core.tests.util;
2+
3+
import java.util.HashSet;
4+
import java.util.Iterator;
5+
import java.util.Set;
6+
7+
import org.junit.Assert;
8+
import org.junit.Test;
9+
10+
import net.lecousin.framework.core.test.LCCoreAbstractTest;
11+
import net.lecousin.framework.util.RandomIDManagerLong;
12+
13+
public class TestRandomIDManagerLong extends LCCoreAbstractTest {
14+
15+
@Test(timeout=60000)
16+
public void test() {
17+
RandomIDManagerLong idm = new RandomIDManagerLong();
18+
Set<Long> used = new HashSet<Long>();
19+
for (int i = 0; i < 1000; ++i) {
20+
long id = idm.allocate();
21+
Assert.assertTrue(used.add(Long.valueOf(id)));
22+
}
23+
for (long id = 159; id < 587; ++id) {
24+
Long l = Long.valueOf(id);
25+
if (!used.contains(l)) {
26+
used.add(l);
27+
idm.used(id);
28+
}
29+
}
30+
for (long id = 4590; id < 5870; ++id) {
31+
Long l = Long.valueOf(id);
32+
if (!used.contains(l)) {
33+
used.add(l);
34+
idm.used(id);
35+
}
36+
}
37+
for (Iterator<Long> it = used.iterator(); it.hasNext(); ) {
38+
idm.free(it.next().longValue());
39+
}
40+
}
41+
42+
}

net.lecousin.core/src/test/java/net/lecousin/framework/core/tests/xml/TestXMLStreamReader.java

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,13 @@
44
import net.lecousin.framework.concurrent.Task;
55
import net.lecousin.framework.io.IO;
66
import net.lecousin.framework.io.buffering.SimpleBufferedReadable;
7+
import net.lecousin.framework.xml.XMLException;
78
import net.lecousin.framework.xml.XMLStreamEvents.Event;
89
import net.lecousin.framework.xml.XMLStreamReader;
910

11+
import java.io.EOFException;
12+
import java.io.IOException;
13+
1014
import org.junit.Assert;
1115
import org.junit.Test;
1216

@@ -57,4 +61,22 @@ public void testStart() throws Exception {
5761
Assert.assertEquals("myRoot", xml.event.localName.asString());
5862
}
5963

64+
@Test(timeout=60000)
65+
public void testMaxTextSize() throws XMLException, IOException {
66+
XMLStreamReader xml = parse("xml-test-suite/mine/longText.xml");
67+
xml.setMaximumCDataSize(15);
68+
xml.setMaximumTextSize(15);
69+
xml.startRootElement();
70+
while (true)
71+
try { xml.next(); }
72+
catch (EOFException e) { break; }
73+
xml = parse("xml-test-suite/mine/longText2.xml");
74+
xml.setMaximumCDataSize(15);
75+
xml.setMaximumTextSize(15);
76+
xml.startRootElement();
77+
while (true)
78+
try { xml.next(); }
79+
catch (EOFException e) { break; }
80+
}
81+
6082
}

net.lecousin.core/src/test/java/net/lecousin/framework/core/tests/xml/TestXMLStreamReaderAsync.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import org.junit.runners.Parameterized;
77
import org.junit.runners.Parameterized.Parameters;
88

9+
import java.io.EOFException;
910
import java.util.ArrayList;
1011
import java.util.Collection;
1112

@@ -117,6 +118,15 @@ public void testLongTextAndCData() throws Exception {
117118
xml.next().blockThrow(0);
118119
} while (!Event.Type.COMMENT.equals(xml.event.type));
119120
Assert.assertEquals(2015, xml.event.text.length());
121+
122+
xml = parse("xml-test-suite/mine/longText2.xml");
123+
xml.start().blockThrow(0);
124+
xml.setMaximumTextSize(25);
125+
xml.setMaximumCDataSize(25);
126+
do {
127+
try { xml.next().blockThrow(0); }
128+
catch (EOFException e) { break; }
129+
} while (true);
120130
}
121131

122132
}
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!DOCTYPE longText>
3+
<theRoot>
4+
<testText>
5+
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce a odio feugiat, ullamcorper lectus eget, facilisis nulla. Nam ullamcorper pulvinar rhoncus. Pellentesque a tristique velit. Vivamus ut erat non elit blandit ornare. Pellentesque tincidunt lectus lectus, vel vestibulum neque efficitur nec. Ut volutpat ante varius purus eleifend, sit amet ornare urna efficitur. Maecenas eget quam ac enim cursus condimentum. In egestas nulla ac massa gravida commodo. Vestibulum ullamcorper, augue placerat ornare elementum, augue lacus cursus erat, ac mollis ex lacus et turpis. In eget faucibus justo, a eleifend quam. Aenean at diam quam. In quam enim, efficitur sit amet blandit quis, euismod sed neque. Nam laoreet euismod elit, bibendum varius odio aliquam ac. Nam eu tortor fringilla, pharetra velit quis, sagittis ligula. Sed bibendum, nunc non ultricies posuere, orci urna porta urna, commodo dignissim nunc sem sodales nunc.
6+
7+
Phasellus neque felis, sollicitudin ut suscipit sit amet, consectetur vel leo. Donec interdum malesuada sapien, non pulvinar nisl sagittis eget. Morbi hendrerit volutpat turpis sit amet tempor. Pellentesque sollicitudin vestibulum ipsum, nec dictum mi. Vestibulum egestas malesuada nunc, at tempor nisl tincidunt et. Aliquam aliquet nunc ut tincidunt iaculis. Aenean mollis est id tellus interdum tristique. Suspendisse vitae fringilla lorem. Nam cursus, ex eget maximus placerat, purus mi luctus metus, quis convallis ligula quam sit amet arcu. Fusce efficitur tellus sapien, ornare tristique quam eleifend eget. Nullam ac tortor ut sapien pellentesque vestibulum vitae sit amet urna.
8+
9+
Donec purus enim, consectetur eget ultricies euismod, semper sit amet mauris. Fusce urna nisl, gravida vel maximus in, finibus in justo. Fusce efficitur arcu id ultrices iaculis. Etiam eros neque, dignissim id lacus at, iaculis scelerisque sem. Praesent efficitur placerat lacinia. Fusce odio tellus, interdum in nunc eu, vulputate molestie leo. Praesent lorem justo, dapibus non amet.
10+
</testText>
11+
12+
<testCData>
13+
<![CDATA[
14+
] xx ]] xxx
15+
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce a odio feugiat, ullamcorper lectus eget, facilisis nulla. Nam ullamcorper pulvinar rhoncus. Pellentesque a tristique velit. Vivamus ut erat non elit blandit ornare. Pellentesque tincidunt lectus lectus, vel vestibulum neque efficitur nec. Ut volutpat ante varius purus eleifend, sit amet ornare urna efficitur. Maecenas eget quam ac enim cursus condimentum. In egestas nulla ac massa gravida commodo. Vestibulum ullamcorper, augue placerat ornare elementum, augue lacus cursus erat, ac mollis ex lacus et turpis. In eget faucibus justo, a eleifend quam. Aenean at diam quam. In quam enim, efficitur sit amet blandit quis, euismod sed neque. Nam laoreet euismod elit, bibendum varius odio aliquam ac. Nam eu tortor fringilla, pharetra velit quis, sagittis ligula. Sed bibendum, nunc non ultricies posuere, orci urna porta urna, commodo dignissim nunc sem sodales nunc.
16+
]
17+
Phasellus neque felis, sollicitudin ut suscipit sit amet, consectetur vel leo. Donec interdum malesuada sapien, non pulvinar nisl sagittis eget. Morbi hendrerit volutpat turpis sit amet tempor. Pellentesque sollicitudin vestibulum ipsum, nec dictum mi. Vestibulum egestas malesuada nunc, at tempor nisl tincidunt et. Aliquam aliquet nunc ut tincidunt iaculis. Aenean mollis est id tellus interdum tristique. Suspendisse vitae fringilla lorem. Nam cursus, ex eget maximus placerat, purus mi luctus metus, quis convallis ligula quam sit amet arcu. Fusce efficitur tellus sapien, ornare tristique quam eleifend eget. Nullam ac tortor ut sapien pellentesque vestibulum vitae sit amet urna.
18+
]]
19+
Donec purus enim, consectetur eget ultricies euismod, semper sit amet mauris. Fusce urna nisl, gravida vel maximus in, finibus in justo. Fusce efficitur arcu id ultrices iaculis. Etiam eros neque, dignissim id lacus at, iaculis scelerisque sem. Praesent efficitur placerat lacinia. Fusce odio tellus, interdum in nunc eu, vulputate molestie leo. Praesent lorem justo, dapibus non amet.
20+
]]>
21+
</testCData>
22+
<testComment>
23+
<!--
24+
- x -- xx --- xxx
25+
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce a odio feugiat, ullamcorper lectus eget, facilisis nulla. Nam ullamcorper pulvinar rhoncus. Pellentesque a tristique velit. Vivamus ut erat non elit blandit ornare. Pellentesque tincidunt lectus lectus, vel vestibulum neque efficitur nec. Ut volutpat ante varius purus eleifend, sit amet ornare urna efficitur. Maecenas eget quam ac enim cursus condimentum. In egestas nulla ac massa gravida commodo. Vestibulum ullamcorper, augue placerat ornare elementum, augue lacus cursus erat, ac mollis ex lacus et turpis. In eget faucibus justo, a eleifend quam. Aenean at diam quam. In quam enim, efficitur sit amet blandit quis, euismod sed neque. Nam laoreet euismod elit, bibendum varius odio aliquam ac. Nam eu tortor fringilla, pharetra velit quis, sagittis ligula. Sed bibendum, nunc non ultricies posuere, orci urna porta urna, commodo dignissim nunc sem sodales nunc.
26+
-
27+
Phasellus neque felis, sollicitudin ut suscipit sit amet, consectetur vel leo. Donec interdum malesuada sapien, non pulvinar nisl sagittis eget. Morbi hendrerit volutpat turpis sit amet tempor. Pellentesque sollicitudin vestibulum ipsum, nec dictum mi. Vestibulum egestas malesuada nunc, at tempor nisl tincidunt et. Aliquam aliquet nunc ut tincidunt iaculis. Aenean mollis est id tellus interdum tristique. Suspendisse vitae fringilla lorem. Nam cursus, ex eget maximus placerat, purus mi luctus metus, quis convallis ligula quam sit amet arcu. Fusce efficitur tellus sapien, ornare tristique quam eleifend eget. Nullam ac tortor ut sapien pellentesque vestibulum vitae sit amet urna.
28+
--
29+
Donec purus enim, consectetur eget ultricies euismod, semper sit amet mauris. Fusce urna nisl, gravida vel maximus in, finibus in justo. Fusce efficitur arcu id ultrices iaculis. Etiam eros neque, dignissim id lacus at, iaculis scelerisque sem. Praesent efficitur placerat lacinia. Fusce odio tellus, interdum in nunc eu, vulputate molestie leo. Praesent lorem justo, dapibus non amet.
30+
-->
31+
</testComment>
32+
</theRoot>

0 commit comments

Comments
 (0)