Skip to content

Crash of Realtime Report when server output contains <![CDATA[...]]> #107

Closed
@PhilippSalvisberg

Description

@PhilippSalvisberg

When I run the realtime reporter via ut3_tester_helper for ut3$user# and the test core.check_fail_escape.fail_miserably exists the realtime reporter crashes while processing the following post-test event:

<event type="post-test">
  <test id="core.check_fail_escape.fail_miserably">
    <testNumber>1</testNumber>
    <totalNumberOfTests>673</totalNumberOfTests>
    <startTime>2020-06-02T23:10:03.579607</startTime>
    <endTime>2020-06-02T23:10:03.591826</endTime>
    <executionTime>.012219</executionTime>
    <counter>
      <disabled>0</disabled>
      <success>1</success>
      <failure>0</failure>
      <error>0</error>
      <warning>0</warning>
    </counter>
    <serverOutput><![CDATA[FAILURE
  Actual: 'test' (varchar2) was expected to equal: '<![CDATA[some stuff]]>' (varchar2)
  at "UT3$USER#.CHECK_FAIL_ESCAPE.FAIL_MISERABLY", line 4 ut3_develop.ut.expect('test').to_equal('<![CDATA[some stuff]]>');
]]></serverOutput>
  </test>
</event>

The realtime reporter gets stuck. It looks like this "forever" (I expect it to time out after 4h, but not checked ;-) ). Not possible to stop/abort the process:

image

The reason is clear. Nested CDATA sections are not supported by XML. It is the reponsibility of the realtime reporter in the utPLSQL framework to produce a valid XML. However, the SQL Developer extension must still be capable to process data produced by utPLSQL 3.1.4 .. 3.1.10 (or so). Hence I suggest to implement some pre-processing to fix such wrong XML.

This link might be helpful: https://stackoverflow.com/questions/12860754/using-cdata-inside-another-cdata .

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions