Linker error regarding importing and unit tests. Is this a bug?
Gary Willoughby
dev at nomad.so
Fri Nov 1 09:24:07 PDT 2013
On Friday, 1 November 2013 at 15:32:54 UTC, Daniel Davidson wrote:
> An alternative is to move the import statements in test1.d out
> of the unittest block, which becomes a function, to file scope.
> Then if you have multiple unittests in test1.d all are covered
> and the symbols are available.
>
> ...
> version(unittest) {
> import methods;
> }
> unittest
> {
> import std.stdio;
> writeln("test1 unit test");
> S s;
> assert(s.x.nothing());
> }
>
> Thanks
> Dan
Ah right, if the unit tests are transformed into a function then
is this a problem with the scoped import rules? It seems really
odd, as the compiler seems to strip out the imports within the
unit test block when that module is imported into another. This
doesn't seem to affect the standard library only user modules.
More information about the Digitalmars-d-learn
mailing list