diff tests/runminitest.d @ 341:1bb99290e03a trunk

[svn r362] Started merging the old 'test' dir as well as the newer 'tangotests' dir into 'tests/mini' and 'tests/minicomplex'.
author lindquist
date Sun, 13 Jul 2008 02:51:19 +0200
parents runalltests.d@5071469303d4
children d8b165faae9b
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/runminitest.d	Sun Jul 13 02:51:19 2008 +0200
@@ -0,0 +1,45 @@
+module runminitest;
+
+import std.file;
+import std.path;
+import std.process;
+import std.stdio;
+
+int main(string[] args) {
+    string[] bad;
+    string[] badrun;
+
+    chdir("mini");
+
+    auto contents = listdir(".", "*.d");
+    foreach(c; contents) {
+        string cmd = "llvmdc -quiet "~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;
+}