Open tanifgit opened 8 months ago
@tanifgit Since version 2.12.0 the vscode-objectscript extension has had %UnitTest running capabilities built in. It should allow the running of local test classes that aren't direct subclasses of %UnitTest.TestCase. You can read the docs for that new feature here.
If you have a test case class that extends %UnitTest.TestCase but in an indirect way (i.e. a class that is not named %UnitTest.TestCase, but rather a class that in turn extends it; or somewhere up the hierarchy, which could be common practice for organizations managing their test cases), the classes will not show with their methods/tests, and will not be runnable.
I believe that while the server-side editing related code (ServerTests.ts):
{ query: 'CALL %Dictionary.ClassDefinition_SubclassOf('%UnitTest.TestCase', '${(namespace === "%SYS" ? "" : "@")}') '},
Runs a query that will indeed return all sub-classes, the client-side editing related code (LocalTests.ts) performs this kind of check:Which naturally will only find classes that explicitly have the %UnitTest.TestCase in their Extends definition.