@@ -58,7 +58,6 @@ create or replace type body ut_tfs_junit_reporter is
5858
5959 procedure print_test_results(a_test ut_test) is
6060 l_results ut_varchar2_rows := ut_varchar2_rows();
61- l_lines ut_varchar2_list;
6261 begin
6362 self.print_text('<testcase classname="' || dbms_xmlgen.convert(get_path(a_test.path, a_test.name)) || '" ' ||
6463 get_common_testcase_attributes(a_test) || '>');
@@ -73,22 +72,13 @@ create or replace type body ut_tfs_junit_reporter is
7372 if a_test.result = ut_utils.gc_error then
7473 ut_utils.append_to_list( l_results, '<error type="error" message="Error while executing '||a_test.name||'">');
7574 ut_utils.append_to_list( l_results, c_cdata_start_tag);
76- ut_utils.append_to_list( l_results, ut_utils.table_to_clob(a_test.get_error_stack_traces()));
75+ ut_utils.append_to_list( l_results, replace( ut_utils.table_to_clob(a_test.get_error_stack_traces()), c_cdata_end_tag, c_cdata_end_tag_wrap ));
7776 ut_utils.append_to_list( l_results, c_cdata_end_tag);
7877 ut_utils.append_to_list( l_results, '</error>');
7978 -- Do not count error as failure
8079 elsif a_test.result = ut_utils.gc_failure then
8180 ut_utils.append_to_list( l_results, '<failure type="failure" message="Test '||a_test.name||' failed">');
82- ut_utils.append_to_list( l_results, c_cdata_start_tag);
83- for i in 1 .. a_test.failed_expectations.count loop
84- l_lines := a_test.failed_expectations(i).get_result_lines();
85- for j in 1 .. l_lines.count loop
86- --Encapsulate nested CDATA in results
87- ut_utils.append_to_list( l_results, replace( l_lines(j), c_cdata_end_tag, c_cdata_end_tag_wrap ) );
88- end loop;
89- ut_utils.append_to_list( l_results, replace( a_test.failed_expectations(i).caller_info, c_cdata_end_tag, c_cdata_end_tag_wrap ) );
90- end loop;
91- ut_utils.append_to_list( l_results, c_cdata_end_tag);
81+ ut_utils.append_to_list( l_results, a_test.get_failed_expectations_cdata() );
9282 ut_utils.append_to_list( l_results, '</failure>');
9383 end if;
9484
@@ -127,7 +117,7 @@ create or replace type body ut_tfs_junit_reporter is
127117 if l_outputs is not null and l_outputs != empty_clob() then
128118 ut_utils.append_to_list( l_results, '<system-out>');
129119 ut_utils.append_to_list( l_results, c_cdata_start_tag);
130- ut_utils.append_to_list( l_results, l_outputs);
120+ ut_utils.append_to_list( l_results, replace( l_outputs, c_cdata_end_tag, c_cdata_end_tag_wrap ) );
131121 ut_utils.append_to_list( l_results, c_cdata_end_tag);
132122 ut_utils.append_to_list( l_results, '</system-out>');
133123 else
@@ -138,7 +128,7 @@ create or replace type body ut_tfs_junit_reporter is
138128 if l_errors is not empty then
139129 ut_utils.append_to_list( l_results, '<system-err>');
140130 ut_utils.append_to_list( l_results, c_cdata_start_tag);
141- ut_utils.append_to_list( l_results, ut_utils.table_to_clob(l_errors));
131+ ut_utils.append_to_list( l_results, replace( ut_utils.table_to_clob(l_errors), c_cdata_end_tag, c_cdata_end_tag_wrap ) );
142132 ut_utils.append_to_list( l_results, c_cdata_end_tag);
143133 ut_utils.append_to_list( l_results, '</system-err>');
144134 else
0 commit comments