diff --git a/.gitignore b/.gitignore index 823eaec..15d535f 100644 --- a/.gitignore +++ b/.gitignore @@ -25,3 +25,6 @@ /test/expected-issue616-output /test/describe-project/dummy.dat /test/describe-project/dummy-dep1.dat + +# Ignore coverage files +cov/ diff --git a/.travis.yml b/.travis.yml index 65629a6..bd60f14 100644 --- a/.travis.yml +++ b/.travis.yml @@ -5,9 +5,9 @@ include: - d: dmd-2.068.2-b1 - d: dmd-2.068.1 - - d: dmd-2.067.1 env: - COVERAGE=true + - d: dmd-2.067.1 - d: dmd-2.066.1 - d: dmd-2.065.0 - d: dmd-2.064.2 diff --git a/source/app.d b/source/app.d index af2b866..370cd8f 100644 --- a/source/app.d +++ b/source/app.d @@ -11,7 +11,5 @@ int main(string[] args) { - version (unittest) return 0; - else return runDubCommandLine(args); + return runDubCommandLine(args); } - diff --git a/source/dub/dub.d b/source/dub/dub.d index 65fd7ee..d06f888 100644 --- a/source/dub/dub.d +++ b/source/dub/dub.d @@ -39,6 +39,20 @@ // Workaround for libcurl liker errors when building with LDC version (LDC) pragma(lib, "curl"); +// Set output path and options for coverage reports +version (DigitalMars) version (D_Coverage) static if (__VERSION__ >= 2068) +{ + shared static this() + { + import core.runtime, std.file, std.path, std.stdio; + dmd_coverSetMerge(true); + auto path = buildPath(dirName(thisExePath()), "../cov"); + if (!path.exists) + mkdir(path); + dmd_coverDestPath(path); + } +} + enum defaultRegistryURL = "http://code.dlang.org/"; /// The default supplier for packages, which is the registry @@ -472,14 +486,14 @@ { import std.stdio; import std.ascii : newline; - + // Split comma-separated lists string[] requestedDataSplit = requestedData .map!(a => a.splitter(",").map!strip) .joiner() .array(); - + auto data = m_project.listBuildSettings(platform, config, buildType, requestedDataSplit, formattingCompiler, nullDelim); @@ -1107,4 +1121,3 @@ return null; } } -