mirror of
https://github.com/xomboverlord/ldc.git
synced 2026-01-13 11:23:14 +01:00
47 lines
1.1 KiB
D
47 lines
1.1 KiB
D
module runminitest;
|
|
|
|
import std.file;
|
|
import std.path;
|
|
import std.process;
|
|
import std.stdio;
|
|
import std.string;
|
|
|
|
int main(string[] args) {
|
|
string[] bad;
|
|
string[] badrun;
|
|
|
|
chdir("mini");
|
|
|
|
auto contents = listdir(".", "*.d");
|
|
foreach(c; contents) {
|
|
string cmd = format("llvmdc %s -quiet -of%s", c, getName(c));
|
|
foreach(v; args[1..$]) {
|
|
cmd ~= ' ';
|
|
cmd ~= v;
|
|
}
|
|
writefln(cmd);
|
|
if (system(cmd) != 0) {
|
|
bad ~= c;
|
|
}
|
|
else if (system(getName(c)) != 0) {
|
|
badrun ~= c;
|
|
}
|
|
}
|
|
|
|
int ret = 0;
|
|
if (bad.length > 0 || badrun.length > 0) {
|
|
writefln(bad.length, '/', contents.length, " of the tests failed to compile:");
|
|
foreach(b; bad) {
|
|
writefln(" ",b);
|
|
}
|
|
writefln(badrun.length, '/', contents.length - bad.length, " of the compiled tests failed to run:");
|
|
foreach(b; badrun) {
|
|
writefln(" ",b);
|
|
}
|
|
ret = 1;
|
|
}
|
|
|
|
writefln(contents.length - bad.length - badrun.length, '/', contents.length, " of the tests passed");
|
|
return ret;
|
|
}
|