Skip to content

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

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 .

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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