Add tests from vibe-d:core.

This commit is contained in:
Sönke Ludwig 2017-02-17 00:55:16 +01:00
parent 99bc332a81
commit 5a8d5a2fea
No known key found for this signature in database
GPG key ID: D95E8DB493EE314C
7 changed files with 354 additions and 0 deletions

View file

@ -0,0 +1,42 @@
/+ dub.sdl:
name "tests"
description "TCP disconnect task issue"
dependency "vibe-core" path="../"
versions "VibeDefaultMain"
+/
module test;
import vibe.core.core;
import vibe.core.net;
import core.time : msecs;
shared static this()
{
listenTCP(11375,(conn){
auto td = runTask!TCPConnection((conn) {
ubyte [3] buf;
try {
conn.read(buf);
assert(false, "Expected read() to throw an exception.");
} catch (Exception) {} // expected
}, conn);
sleep(10.msecs);
conn.close();
});
runTask({
try {
auto conn = connectTCP("127.0.0.1", 11375);
conn.write("a");
conn.close();
} catch (Exception e) assert(false, e.msg);
try {
auto conn = connectTCP("127.0.0.1", 11375);
conn.close();
} catch (Exception e) assert(false, e.msg);
sleep(50.msecs);
exitEventLoop();
});
}