Skip to content

Client Side Editing: TestCase classes that extend %UnitTest.TestCase indirectly are not "runnable" #27

Open
@tanifgit

Description

@tanifgit

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:

if (lineText.startsWith('Class ')) {
                                if (!lineText.includes('%UnitTest.TestCase')) {
                                    break;
                                }

Which naturally will only find classes that explicitly have the %UnitTest.TestCase in their Extends definition.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions