Merge pull request #43 from vibe-d/test_latest_compilers
Test the latest compiler versions. merged-on-behalf-of: Sönke Ludwig <s-ludwig@users.noreply.github.com>
This commit is contained in:
commit
107f4c084f
|
@ -9,12 +9,17 @@ d:
|
||||||
# this way the overall test time gets cut down (GDC/LDC are a lot
|
# this way the overall test time gets cut down (GDC/LDC are a lot
|
||||||
# slower tham DMD, so they should be started early), while still
|
# slower tham DMD, so they should be started early), while still
|
||||||
# catching most DMD version related build failures early
|
# catching most DMD version related build failures early
|
||||||
- dmd-2.075.0
|
- dmd-2.077.1
|
||||||
- dmd-2.071.2
|
- dmd-2.071.2
|
||||||
|
- ldc-1.6.0
|
||||||
|
- ldc-1.5.0
|
||||||
|
- ldc-1.4.0
|
||||||
- ldc-1.3.0
|
- ldc-1.3.0
|
||||||
- ldc-1.2.0
|
- ldc-1.2.0
|
||||||
- ldc-1.1.0
|
- ldc-1.1.0
|
||||||
- dmd-beta
|
- dmd-beta
|
||||||
|
- dmd-2.076.1
|
||||||
|
- dmd-2.075.1
|
||||||
- dmd-2.074.1
|
- dmd-2.074.1
|
||||||
- dmd-2.073.2
|
- dmd-2.073.2
|
||||||
- dmd-2.072.2
|
- dmd-2.072.2
|
||||||
|
|
|
@ -27,12 +27,16 @@ Supported compilers
|
||||||
|
|
||||||
The following compilers are tested and supported:
|
The following compilers are tested and supported:
|
||||||
|
|
||||||
- DMD 2.076.0
|
- DMD 2.077.1
|
||||||
|
- DMD 2.076.1
|
||||||
- DMD 2.075.1
|
- DMD 2.075.1
|
||||||
- DMD 2.074.1
|
- DMD 2.074.1
|
||||||
- DMD 2.073.2
|
- DMD 2.073.2
|
||||||
- DMD 2.072.2
|
- DMD 2.072.2
|
||||||
- DMD 2.071.2
|
- DMD 2.071.2
|
||||||
|
- LDC 1.6.0
|
||||||
|
- LDC 1.5.0
|
||||||
|
- LDC 1.4.0
|
||||||
- LDC 1.3.0
|
- LDC 1.3.0
|
||||||
- LDC 1.2.0
|
- LDC 1.2.0
|
||||||
- LDC 1.1.0
|
- LDC 1.1.0
|
||||||
|
|
24
appveyor.yml
24
appveyor.yml
|
@ -2,19 +2,23 @@ platform: x64
|
||||||
environment:
|
environment:
|
||||||
matrix:
|
matrix:
|
||||||
- DC: dmd
|
- DC: dmd
|
||||||
DVersion: 2.075.0
|
DVersion: 2.077.1
|
||||||
arch: x64
|
arch: x64
|
||||||
config: winapi
|
config: winapi
|
||||||
- DC: dmd
|
- DC: dmd
|
||||||
DVersion: 2.075.0
|
DVersion: 2.077.1
|
||||||
arch: x86
|
arch: x86
|
||||||
config: winapi-optlink
|
config: winapi-optlink
|
||||||
- DC: dmd
|
- DC: dmd
|
||||||
DVersion: 2.075.0
|
DVersion: 2.077.1
|
||||||
arch: x86_mscoff
|
arch: x86_mscoff
|
||||||
config: winapi
|
config: winapi
|
||||||
- DC: dmd
|
- DC: dmd
|
||||||
DVersion: 2.075.0
|
DVersion: 2.076.1
|
||||||
|
arch: x86
|
||||||
|
config: select-optlink
|
||||||
|
- DC: dmd
|
||||||
|
DVersion: 2.075.1
|
||||||
arch: x86
|
arch: x86
|
||||||
config: select-optlink
|
config: select-optlink
|
||||||
- DC: dmd
|
- DC: dmd
|
||||||
|
@ -33,6 +37,18 @@ environment:
|
||||||
DVersion: 2.071.1
|
DVersion: 2.071.1
|
||||||
arch: x86
|
arch: x86
|
||||||
config: winapi-optlink
|
config: winapi-optlink
|
||||||
|
- DC: ldc
|
||||||
|
DVersion: 1.6.0
|
||||||
|
arch: x64
|
||||||
|
config: winapi
|
||||||
|
- DC: ldc
|
||||||
|
DVersion: 1.5.0
|
||||||
|
arch: x86
|
||||||
|
config: winapi
|
||||||
|
- DC: ldc
|
||||||
|
DVersion: 1.4.0
|
||||||
|
arch: x64
|
||||||
|
config: winapi
|
||||||
- DC: ldc
|
- DC: ldc
|
||||||
DVersion: 1.3.0
|
DVersion: 1.3.0
|
||||||
arch: x64
|
arch: x64
|
||||||
|
|
2
dub.sdl
2
dub.sdl
|
@ -21,7 +21,7 @@ configuration "kqueue" {
|
||||||
}
|
}
|
||||||
|
|
||||||
configuration "winapi" {
|
configuration "winapi" {
|
||||||
platforms "windows-x86_64" "windows-x86_mscoff"
|
platforms "windows-x86_64" "windows-x86_mscoff" "windows-ldc" "windows-gdc"
|
||||||
versions "EventcoreWinAPIDriver"
|
versions "EventcoreWinAPIDriver"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -27,20 +27,20 @@ void main()
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
assert(dur > 200.msecs, (dur - 200.msecs).toString());
|
assert(dur > 1200.msecs, (dur - 1200.msecs).toString());
|
||||||
assert(dur < 260.msecs, (dur - 200.msecs).toString());
|
assert(dur < 1300.msecs, (dur - 1200.msecs).toString());
|
||||||
} catch (Exception e) assert(false, e.msg);
|
} catch (Exception e) assert(false, e.msg);
|
||||||
|
|
||||||
s_startTime += dur;
|
s_startTime += dur;
|
||||||
|
|
||||||
eventDriver.timers.set(tm, 100.msecs, 100.msecs);
|
eventDriver.timers.set(tm, 300.msecs, 300.msecs);
|
||||||
|
|
||||||
void secondTier(TimerID timer) nothrow @safe {
|
void secondTier(TimerID timer) nothrow @safe {
|
||||||
try {
|
try {
|
||||||
auto dur = Clock.currTime(UTC()) - s_startTime;
|
auto dur = Clock.currTime(UTC()) - s_startTime;
|
||||||
s_cnt++;
|
s_cnt++;
|
||||||
assert(dur > 100.msecs * s_cnt, (dur - 100.msecs * s_cnt).toString());
|
assert(dur > 300.msecs * s_cnt, (dur - 300.msecs * s_cnt).toString());
|
||||||
assert(dur < 100.msecs * s_cnt + 60.msecs, (dur - 100.msecs * s_cnt).toString());
|
assert(dur < 300.msecs * s_cnt + 100.msecs, (dur - 300.msecs * s_cnt).toString());
|
||||||
assert(s_cnt <= 3);
|
assert(s_cnt <= 3);
|
||||||
|
|
||||||
if (s_cnt == 3) {
|
if (s_cnt == 3) {
|
||||||
|
@ -55,7 +55,7 @@ void main()
|
||||||
eventDriver.timers.wait(tm, &secondTier);
|
eventDriver.timers.wait(tm, &secondTier);
|
||||||
});
|
});
|
||||||
|
|
||||||
eventDriver.timers.set(tm, 200.msecs, 0.msecs);
|
eventDriver.timers.set(tm, 1200.msecs, 0.msecs);
|
||||||
|
|
||||||
ExitReason er;
|
ExitReason er;
|
||||||
do er = eventDriver.core.processEvents(Duration.max);
|
do er = eventDriver.core.processEvents(Duration.max);
|
||||||
|
|
|
@ -26,30 +26,30 @@ void main()
|
||||||
writefln("First timer");
|
writefln("First timer");
|
||||||
auto dur = Clock.currTime(UTC()) - s_startTime;
|
auto dur = Clock.currTime(UTC()) - s_startTime;
|
||||||
|
|
||||||
assert(dur >= 200.msecs, (dur - 200.msecs).toString());
|
assert(dur >= 1200.msecs, (dur - 1200.msecs).toString());
|
||||||
assert(dur < 250.msecs, (dur - 200.msecs).toString());
|
assert(dur < 1300.msecs, (dur - 1200.msecs).toString());
|
||||||
|
|
||||||
timer1fired = true;
|
timer1fired = true;
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
assert(false, e.msg);
|
assert(false, e.msg);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
eventDriver.timers.set(tm, 200.msecs, 0.msecs);
|
eventDriver.timers.set(tm, 1200.msecs, 0.msecs);
|
||||||
|
|
||||||
// second timer repeating 100ms, 3 times
|
// second timer repeating 300ms, 5 times
|
||||||
auto tm2 = eventDriver.timers.create();
|
auto tm2 = eventDriver.timers.create();
|
||||||
eventDriver.timers.set(tm2, 100.msecs, 100.msecs);
|
eventDriver.timers.set(tm2, 300.msecs, 300.msecs);
|
||||||
void periodicCallback(TimerID timer) nothrow @safe {
|
void periodicCallback(TimerID timer) nothrow @safe {
|
||||||
try {
|
try {
|
||||||
writefln("Second timer");
|
writefln("Second timer");
|
||||||
|
|
||||||
auto dur = Clock.currTime(UTC()) - s_startTime;
|
auto dur = Clock.currTime(UTC()) - s_startTime;
|
||||||
s_cnt++;
|
s_cnt++;
|
||||||
assert(dur > 100.msecs * s_cnt, (dur - 100.msecs * s_cnt).toString());
|
assert(dur > 300.msecs * s_cnt, (dur - 300.msecs * s_cnt).toString());
|
||||||
assert(dur < 100.msecs * s_cnt + 60.msecs, (dur - 100.msecs * s_cnt).toString());
|
assert(dur < 300.msecs * s_cnt + 100.msecs, (dur - 300.msecs * s_cnt).toString());
|
||||||
assert(s_cnt <= 3);
|
assert(s_cnt <= 5);
|
||||||
|
|
||||||
if (s_cnt == 3) {
|
if (s_cnt == 5) {
|
||||||
s_done = true;
|
s_done = true;
|
||||||
eventDriver.timers.stop(timer);
|
eventDriver.timers.stop(timer);
|
||||||
assert(timer1fired, "Timer 1 didn't fire within 300ms");
|
assert(timer1fired, "Timer 1 didn't fire within 300ms");
|
||||||
|
|
Loading…
Reference in a new issue