Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Failure when comparing nested objects #1082

Closed
@jgebal

Description

@jgebal

Describe the bug
When comparing nested objects the comparison fails with an exception.

Provide version info
utPLSQL 3.1.10 - any database

Information about client software
not applicable

To Reproduce

Run the below script

create or replace type some_value as object(
  the_value   number,
  is_relative integer(1)
);

create or replace type some_item as object (
  first_value  some_value,
  second_value some_value
);

declare
  l_expected some_item;
  l_actual   some_item;
begin
  l_expected := some_item(some_value( 1, 0 ), some_value(2.22, 1));
  l_actual   := some_item(some_value( 1, 0 ), some_value(2.22, 0));
  ut.expect(anydata.convertObject(l_actual)).to_equal(anydata.convertObject(l_expected));
end;
/

See the exception:

ORA-00902: invalid datatype
ORA-06512: at "UT3.UT_DATA_VALUE_REFCURSOR", line 336
ORA-06512: at "UT3.UT_COMPOUND_DATA_HELPER", line 628
ORA-06512: at "UT3.UT_DATA_VALUE_REFCURSOR", line 328
ORA-06512: at "UT3.UT_DATA_VALUE_REFCURSOR", line 384
ORA-06512: at "UT3.UT_DATA_VALUE_ANYDATA", line 129
ORA-06512: at "UT3.UT_EQUAL", line 229
ORA-06512: at "UT3.UT_EXPECTATION", line 26
ORA-06512: at "UT3.UT_EXPECTATION", line 96
ORA-06512: at line 7

Expected behavior

The expectation should report data differences.

Additional context

The behavior seem to show up when the object contains nested objects.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions