module unit_threaded.tests.module_with_attrs; import unit_threaded.attrs; import std.exception; @HiddenTest("foo") @ShouldFail("bar") @SingleThreaded void testAttrs() { } @ShouldFailWith!Exception void testOtherAttrs() {} @ShouldFail @(1, 2, 3) void testValues(int i) { } @DontTest @("DontTestBlock") unittest { assert(0); } @ShouldFail @("will fail") unittest { assert(0); } class TestException : Exception { this(string m) { super(m); } } @ShouldFailWith!TestException @("ShouldFailWith that fails due to wrong type") unittest { assert(0); } @ShouldFailWith!TestException @("ShouldFailWith that fails due to not failing") unittest { } @ShouldFailWith!TestException @("ShouldFailWith that passes") unittest { throw new TestException("you won't see this"); }