import std.exception : assertThrown; version(Posix) { try { auto devNull = File("/dev/null", "rwb"); ulong pid; spawnProcessDetached(["whoami"], devNull, devNull, devNull, null, Config.none, "./test", &pid); assert(pid != 0); assertThrown(spawnProcessDetached(["./test/nonexistent"])); assertThrown(spawnProcessDetached(["./test/executable.sh"], devNull, devNull, devNull, null, Config.none, "./test/nonexistent")); assertThrown(spawnProcessDetached(["./dub.json"])); assertThrown(spawnProcessDetached(["./test/notreallyexecutable"])); } catch(Exception e) { } } version(Windows) { try { ulong pid; spawnProcessDetached(["whoami"], std.stdio.stdin, std.stdio.stdout, std.stdio.stderr, null, Config.none, "./test", &pid); assertThrown(spawnProcessDetached(["dub.json"])); } catch(Exception e) { } }