Template classMembers
template classMembers(string moduleName)
;
Example
TestClassDiscovery should find the Test Suite class
auto discovery = new TestClassDiscovery();
discovery .addModule!(`lifecycle/trial/discovery/testclass.d`, `trial.discovery.testclass`);
auto testCases = discovery .getTestCases;
testCases .length .should .equal(2);
testCases[0] .suiteName .should .equal(`trial.discovery.testclass.SomeTestSuite`);
testCases[0] .name .should .equal(`A simple test`);
testCases[1] .suiteName .should .equal(`trial.discovery.testclass.OtherTestSuite`);
testCases[1] .name .should .equal(`Some other name`);
Example
discoverTestCases should find the Test Suite class
auto testDiscovery = new TestClassDiscovery;
auto testCases = testDiscovery .discoverTestCases(__FILE__);
testCases .length .should .equal(2);
testCases[0] .suiteName .should .equal(`trial.discovery.testclass.SomeTestSuite`);
testCases[0] .name .should .equal(`A simple test`);
testCases[1] .suiteName .should .equal(`trial.discovery.testclass.OtherTestSuite`);
testCases[1] .name .should .equal(`Some other name`);
Example
TestClassDiscovery should execute tests from a Test Suite class
scope (exit)
{
SomeTestSuite .lastTest = "";
}
auto discovery = new TestClassDiscovery();
discovery .addModule!(`lifecycle/trial/discovery/testclass.d`, `trial.discovery.testclass`);
auto test = discovery .getTestCases .filter!(a => a .suiteName == `trial.discovery.testclass.SomeTestSuite`)
.filter!(a => a .name == `A simple test`) .front;
test .func();
SomeTestSuite .lastTest .should .equal("a simple test");
Example
TestClassDiscovery should execute the before and after methods tests from a Test Suite class
scope (exit)
{
OtherTestSuite .order = [];
}
auto discovery = new TestClassDiscovery();
discovery .addModule!(`lifecycle/trial/discovery/testclass.d`, `trial.discovery.testclass`);
auto test = discovery .getTestCases .filter!(a => a .suiteName == `trial.discovery.testclass.OtherTestSuite`)
.filter!(a => a .name == `Some other name`) .front;
test .func();
OtherTestSuite .order .should .equal(["before all", "before each",
"a custom test", "after each", "after all"]);