Skip to content

ORA-20204 raised when running a context path #1317

Description

@michaelstaszewski

Defect
An ORA-20204 is raised when running a context path when the context name was created using PascalCase, e.g. Context1

ORA-20204: No suite packages found for path MSTASZEW:test.sub1.ut_test.context1.

Version info

utPLSQL 3.1.14 on Oracle 19.3.0.0.0

To Reproduce

Create a suite with a context that has a name in PascalCase.

CREATE OR REPLACE PACKAGE MSTASZEW.ut_test
IS
    -- %suite
    -- %suitepath(test.sub1)

    -- %context
    -- %name(Context1)

    -- %test
    PROCEDURE test01;
    -- %endcontext
END ut_test;
/

CREATE OR REPLACE PACKAGE BODY MSTASZEW.ut_test
IS
    PROCEDURE test01
    AS
    BEGIN
        ut.expect (TRUE).to_be_true;
    END;
END ut_test;
/

Run the query shown in this post to get all runnable paths.

select object_owner||':'||path as runnable_path,
       item_line_no,
       item_description,
       object_name,
       object_owner,
       item_type
  from table( ut_runner.get_suites_info('MSTASZEW', 'UT_TEST')) x
;

Results:

RUNNABLE_PATH ITEM_LINE_NO ITEM_DESCRIPTION OBJECT_NAME OBJECT_OWNER ITEM_TYPE
MSTASZEW:test.sub1 SUB1 MSTASZEW UT_LOGICAL_SUITE
MSTASZEW:test TEST MSTASZEW UT_LOGICAL_SUITE
MSTASZEW:test.sub1.ut_test 3 UT_TEST MSTASZEW UT_SUITE
MSTASZEW:test.sub1.ut_test.Context1 6 Context1 UT_TEST MSTASZEW UT_SUITE_CONTEXT
MSTASZEW:test.sub1.ut_test.Context1.test01 9 UT_TEST MSTASZEW UT_TEST

Run the context using the runnable path returned from the previous query.

BEGIN
    ut.run('MSTASZEW:test.sub1.ut_test.Context1');
END;

An error is returned.

Error at line 1
ORA-20204: No suite packages found for path MSTASZEW:test.sub1.ut_test.context1.
ORA-06512: at "UT3.UT_RUNNER", line 151
ORA-06512: at "UT3.UT_SUITE_MANAGER", line 343
ORA-06512: at "UT3.UT_SUITE_MANAGER", line 343
ORA-06512: at "UT3.UT_SUITE_MANAGER", line 367
ORA-06512: at "UT3.UT_SUITE_MANAGER", line 455
ORA-06512: at "UT3.UT_SUITE_MANAGER", line 551
ORA-06512: at "UT3.UT_RUNNER", line 139
ORA-06512: at "UT3.UT", line 143
ORA-06512: at "UT3.UT", line 577
ORA-06512: at "UT3.UT", line 744
ORA-06512: at line 2

If the context name is changed to context1 it works as expected.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions