Skip to content

Commit

Permalink
Try another strategy to hide unit tests from other projects
Browse files Browse the repository at this point in the history
Unfortunately the "unittest" configuration seems to be "global", and
can get enabled by projects using ae, thus causing ae tests to run as
part of the other project.

Try another approach, making use of the Dub --debug switch.
  • Loading branch information
CyberShadow committed Jun 12, 2024
1 parent fcdd1f9 commit 536b9e7
Show file tree
Hide file tree
Showing 136 changed files with 546 additions and 551 deletions.
10 changes: 5 additions & 5 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,18 +37,18 @@ jobs:
run: |
echo "C:\hostedtoolcache\windows\dc\ldc2-1.32.2\x64\ldc2-1.32.2-windows-multilib\lib32" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
- run: dub test --arch=${{ matrix.arch }}
- run: dub test --debug=ae_unittest --arch=${{ matrix.arch }}

- run: dub test --arch=${{ matrix.arch }} :sys-net-test
- run: dub test --debug=ae_unittest --arch=${{ matrix.arch }} :sys-net-test

- if: ${{ matrix.os == 'ubuntu-20.04' }}
run: dub test --arch=${{ matrix.arch }} :sqlite
run: dub test --debug=ae_unittest --arch=${{ matrix.arch }} :sqlite

- if: ${{ matrix.os == 'ubuntu-20.04' && matrix.dc == 'dmd-2.100.0' }} # old Dub versions can't fetch packages
run: dub test --arch=${{ matrix.arch }} :libpng
run: dub test --debug=ae_unittest --arch=${{ matrix.arch }} :libpng

- if: ${{ matrix.dc == 'dmd-2.100.0' }}
run: dub test --arch=${{ matrix.arch }} :windows
run: dub test --debug=ae_unittest --arch=${{ matrix.arch }} :windows

compilation-test:
timeout-minutes: 5
Expand Down
5 changes: 0 additions & 5 deletions dub.sdl
Original file line number Diff line number Diff line change
Expand Up @@ -66,11 +66,6 @@ excludedSourceFiles "utils/container/package.d"
excludedSourceFiles "utils/serialization/*.d"
excludedSourceFiles "utils/xmldom.d"


configuration "unittest" {
versions "ae_unittest"
}

---------------------------

subPackage {
Expand Down
6 changes: 3 additions & 3 deletions net/asockets.d
Original file line number Diff line number Diff line change
Expand Up @@ -1311,7 +1311,7 @@ class Duplex : IConnection
@property void handleBufferFlushed(BufferFlushedHandler value) { writer.handleBufferFlushed = value; }
}

version(ae_unittest) unittest { if (false) new Duplex(null, null); }
debug(ae_unittest) unittest { if (false) new Duplex(null, null); }

// ***************************************************************************

Expand Down Expand Up @@ -1899,7 +1899,7 @@ public:
}

///
version(ae_unittest) unittest
debug(ae_unittest) unittest
{
auto server = new UdpConnection();
server.bind("127.0.0.1", 0);
Expand Down Expand Up @@ -2216,7 +2216,7 @@ private:

// ***************************************************************************

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
void testTimer()
{
Expand Down
2 changes: 1 addition & 1 deletion net/db/psql/package.d
Original file line number Diff line number Diff line change
Expand Up @@ -265,7 +265,7 @@ private:
mixin DeclareException!q{PgSqlException};

version (HAVE_PSQL_SERVER)
version(ae_unittest) unittest
debug(ae_unittest) unittest
{
import std.process : environment;

Expand Down
2 changes: 1 addition & 1 deletion net/github/rest.d
Original file line number Diff line number Diff line change
Expand Up @@ -182,7 +182,7 @@ struct GitHub
return result;
}

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
auto header = `<https://api.github.com/repositories/1257070/pulls?per_page=100&page=2>; rel="next", ` ~
`<https://api.github.com/repositories/1257070/pulls?per_page=100&page=3>; rel="last"`;
Expand Down
4 changes: 2 additions & 2 deletions net/http/app/server.d
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@

module ae.net.http.app.server;

debug version(ae_unittest) version = SSL;
debug debug(ae_unittest) version = SSL;

import std.algorithm.comparison;
import std.algorithm.searching;
Expand Down Expand Up @@ -499,7 +499,7 @@ private:
}
}

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
alias Test = Server!false;
}
4 changes: 2 additions & 2 deletions net/http/client.d
Original file line number Diff line number Diff line change
Expand Up @@ -726,13 +726,13 @@ void httpPost(string url, UrlParameters vars, void delegate(string) resultHandle
}

// https://issues.dlang.org/show_bug.cgi?id=7016
version (ae_unittest)
debug (ae_unittest)
{
static import ae.net.http.server;
static import ae.net.http.responseex;
}

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
import ae.net.http.common : HttpRequest, HttpResponse;
import ae.net.http.server : HttpServer, HttpServerConnection;
Expand Down
6 changes: 3 additions & 3 deletions net/http/common.d
Original file line number Diff line number Diff line change
Expand Up @@ -380,7 +380,7 @@ public:
.auniq();
}

version(ae_unittest) deprecated unittest
debug(ae_unittest) deprecated unittest
{
auto req = new HttpRequest();
assert(req.remoteHosts() == []);
Expand Down Expand Up @@ -760,7 +760,7 @@ string[] parseItemList(string s)
.amap!`a.str`();
}

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
assert(parseItemList("a, b, c;q=0.5, d") == ["a", "b", "d", "c"]);
}
Expand Down Expand Up @@ -850,7 +850,7 @@ MultipartPart[] decodeMultipart(Data data, string boundary)
return result;
}

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
auto parts = [
MultipartPart(Headers(["Foo" : "bar"]), Data.init),
Expand Down
2 changes: 1 addition & 1 deletion net/http/exception.d
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ class HttpException : Exception
}

///
version(ae_unittest) unittest
debug(ae_unittest) unittest
{
import ae.net.http.responseex : HttpResponseEx;
auto response = new HttpResponseEx;
Expand Down
2 changes: 1 addition & 1 deletion net/http/fastcgi/app.d
Original file line number Diff line number Diff line change
Expand Up @@ -529,7 +529,7 @@ class FastCGIResponderServer : FastCGIAppSocketServer
}
}

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
new FastCGIResponderServer;
}
8 changes: 4 additions & 4 deletions net/http/server.d
Original file line number Diff line number Diff line change
Expand Up @@ -665,9 +665,9 @@ string formatAddress(string protocol, Address address, string vhost = null, usho
(port is null || port == "80" ? "" : ":" ~ port);
}

version (ae_unittest) import ae.net.http.client;
version (ae_unittest) import ae.net.http.responseex;
version(ae_unittest) unittest
debug (ae_unittest) import ae.net.http.client;
debug (ae_unittest) import ae.net.http.responseex;
debug(ae_unittest) unittest
{
int[] replies;
int closeAfter;
Expand Down Expand Up @@ -771,7 +771,7 @@ b=7654321").asBytes));
}

// Test form-data
version(ae_unittest) unittest
debug(ae_unittest) unittest
{
// Temporarily disabled due to DMD regression
// https://issues.dlang.org/show_bug.cgi?id=24050
Expand Down
2 changes: 1 addition & 1 deletion net/ietf/headerparse.d
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,7 @@ Headers parseHeadersImpl(bool FIRST_LINE)(string headerData, out string firstLin
return headers;
}

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
void test(string message)
{
Expand Down
4 changes: 2 additions & 2 deletions net/ietf/headers.d
Original file line number Diff line number Diff line change
Expand Up @@ -192,7 +192,7 @@ struct Headers
}
}

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
Headers headers;
headers["test"] = "test";
Expand Down Expand Up @@ -253,7 +253,7 @@ string normalizeHeaderName(string header) pure
return s;
}

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
assert(normalizeHeaderName("X-ORIGINATING-IP") == "X-Originating-IP");
}
Expand Down
4 changes: 2 additions & 2 deletions net/ietf/message.d
Original file line number Diff line number Diff line change
Expand Up @@ -567,7 +567,7 @@ class Rfc850Message
}
}

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
auto post = new Rfc850Message("From: msonke at example.org (=?ISO-8859-1?Q?S=F6nke_Martin?=)\n\nText");
assert(post.author == "Sönke Martin");
Expand Down Expand Up @@ -681,7 +681,7 @@ string encodeRfc1522Chunk(string str) pure
return result;
}

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
auto text = "В лесу родилась ёлочка";
assert(decodeRfc1522(encodeRfc1522(text)) == text);
Expand Down
8 changes: 4 additions & 4 deletions net/ietf/url.d
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ string applyRelativeURL(string base, string rel)
}

///
version(ae_unittest) unittest
debug(ae_unittest) unittest
{
assert(applyRelativeURL("http://example.com/", "index.html") == "http://example.com/index.html");
assert(applyRelativeURL("http://example.com/index.html", "page.html") == "http://example.com/page.html");
Expand All @@ -66,7 +66,7 @@ string fileNameFromURL(string url)
}

///
version(ae_unittest) unittest
debug(ae_unittest) unittest
{
assert(fileNameFromURL("http://example.com/index.html") == "index.html");
assert(fileNameFromURL("http://example.com/dir/index.html") == "index.html");
Expand Down Expand Up @@ -137,7 +137,7 @@ import std.ascii;
/// except `'-'` and `'_'`.
alias encodeUrlParameter = encodeUrlPart!(c => isAlphaNum(c) || c=='-' || c=='_');

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
assert(encodeUrlParameter("abc?123") == "abc%3F123");
}
Expand Down Expand Up @@ -198,7 +198,7 @@ UrlParameters decodeUrlParameters(string qs)
return dic;
}

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
assert(decodeUrlParameters("").length == 0);
}
2 changes: 1 addition & 1 deletion net/ietf/wrap.d
Original file line number Diff line number Diff line change
Expand Up @@ -295,7 +295,7 @@ string wrapText(Paragraph[] paragraphs, int margin = DEFAULT_WRAP_LENGTH)
return lines.join("\n");
}

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
// Space-stuffing
assert(wrapText(unwrapText(" Hello", WrapFormat.fixed)) == " Hello");
Expand Down
4 changes: 2 additions & 2 deletions net/irc/common.d
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ string rfc1459toUpper(string name) pure
return name.byChar.map!rfc1459toUpper.array;
}

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
assert(rfc1459toLower("{}|[]\\") == "{}|{}|");
assert(rfc1459toUpper("{}|[]\\") == "[]\\[]\\");
Expand All @@ -85,7 +85,7 @@ int rfc1459cmp(in char[] a, in char[] b)
return cmp(a.byChar.map!rfc1459toUpper, b.byChar.map!rfc1459toUpper);
}

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
assert(rfc1459cmp("{}|[]\\", "[]\\[]\\") == 0);
assert(rfc1459cmp("a", "b") == -1);
Expand Down
2 changes: 1 addition & 1 deletion net/oauth/common.d
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,7 @@ struct OAuthSession
return Base64.encode(digest);
}

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
// Example from https://dev.twitter.com/oauth/overview/creating-signatures

Expand Down
6 changes: 3 additions & 3 deletions net/ssl/openssl.d
Original file line number Diff line number Diff line change
Expand Up @@ -715,7 +715,7 @@ T sslEnforce(T)(T v, string message = null)

// ***************************************************************************

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
auto p = new OpenSSLProvider;
auto sc = p.createContext(SSLContext.Kind.server);
Expand Down Expand Up @@ -751,5 +751,5 @@ version(ae_unittest) unittest
assert(ok);
}

version (ae_unittest) import ae.net.ssl.test;
version(ae_unittest) unittest { testSSL(new OpenSSLProvider); }
debug (ae_unittest) import ae.net.ssl.test;
debug(ae_unittest) unittest { testSSL(new OpenSSLProvider); }
2 changes: 1 addition & 1 deletion net/sync.d
Original file line number Diff line number Diff line change
Expand Up @@ -168,7 +168,7 @@ public:
}
}

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
// keep socketManager running -
// ThreadAnchor sockets are daemon
Expand Down
2 changes: 1 addition & 1 deletion sys/btrfs/clone_range.d
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ void cloneRange(
errnoEnforce(ret >= 0, "ioctl(BTRFS_IOC_CLONE_RANGE)");
}

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
if (!checkBtrfs())
return;
Expand Down
2 changes: 1 addition & 1 deletion sys/btrfs/common.d
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ package:

enum BTRFS_IOCTL_MAGIC = 0x94;

version (ae_unittest)
debug (ae_unittest)
{
import ae.sys.file;
import std.stdio : stderr;
Expand Down
2 changes: 1 addition & 1 deletion sys/btrfs/extent_same.d
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ SameExtentResult sameExtent(in Extent[] extents, ulong length)
return result;
} /// ditto

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
if (!checkBtrfs())
return;
Expand Down
8 changes: 4 additions & 4 deletions sys/cmd.d
Original file line number Diff line number Diff line change
Expand Up @@ -205,7 +205,7 @@ if (!hasIndirections!T)
return pipe(input, args, params);
}

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
if (false) // Instantiation test
{
Expand Down Expand Up @@ -241,7 +241,7 @@ string iconv(const(void)[] data, string inputEncoding)
}

version (HAVE_UNIX)
version(ae_unittest) unittest
debug(ae_unittest) unittest
{
assert(iconv("Hello"w, "UTF-16LE") == "Hello");
}
Expand All @@ -254,7 +254,7 @@ string sha1sum(const(void)[] data)
}

version (HAVE_UNIX)
version(ae_unittest) unittest
debug(ae_unittest) unittest
{
assert(sha1sum("") == "da39a3ee5e6b4b0d3255bfef95601890afd80709");
assert(sha1sum("a b\nc\r\nd") == "667c71ffe2ac8a4fe500e3b96435417e4c5ec13b");
Expand Down Expand Up @@ -302,7 +302,7 @@ string expandWindowsEnvVars(alias getenv = environment.get)(string s)
return buf.data;
}

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
std.process.environment[`FOOTEST`] = `bar`;
assert("a%FOOTEST%b".expandWindowsEnvVars() == "abarb");
Expand Down
2 changes: 1 addition & 1 deletion sys/d/cache.d
Original file line number Diff line number Diff line change
Expand Up @@ -431,7 +431,7 @@ DCache createCache(string name, string cacheDir, ICacheHost cacheHost)
}
}

version(ae_unittest) unittest
debug(ae_unittest) unittest
{
void testEngine(string name)
{
Expand Down
Loading

0 comments on commit 536b9e7

Please sign in to comment.