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

Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Cleanup of not needed loops in code - made use of print_clob proced…
…ure in ut_reporter_base.
  • Loading branch information
jgebal committed Mar 14, 2017
commit 80f738771686182a0bf984d30db76a720a397b65
6 changes: 3 additions & 3 deletions source/core/types/ut_reporter_base.tpb
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,11 @@ create or replace type body ut_reporter_base is
ut_output_buffer.send_line(self,a_text);
end;

member procedure print_output(self in out nocopy ut_reporter_base, a_output clob) is
member procedure print_clob(self in out nocopy ut_reporter_base, a_clob clob) is
l_lines ut_varchar2_list;
begin
if a_output is not null and dbms_lob.getlength(a_output) > 0 then
l_lines := ut_utils.clob_to_table(a_output);
if a_clob is not null and dbms_lob.getlength(a_clob) > 0 then
l_lines := ut_utils.clob_to_table(a_clob);
for i in 1 .. l_lines.count loop
self.print_text(l_lines(i));
end loop;
Expand Down
2 changes: 1 addition & 1 deletion source/core/types/ut_reporter_base.tps
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ create or replace type ut_reporter_base authid current_user as object(

member procedure print_text(self in out nocopy ut_reporter_base, a_text varchar2),

member procedure print_output(self in out nocopy ut_reporter_base, a_output clob),
member procedure print_clob(self in out nocopy ut_reporter_base, a_clob clob),

-- run hooks
member procedure before_calling_run(self in out nocopy ut_reporter_base, a_run in ut_run),
Expand Down
5 changes: 1 addition & 4 deletions source/reporters/ut_coverage_html_reporter.tpb
Original file line number Diff line number Diff line change
Expand Up @@ -102,10 +102,7 @@ create or replace type body ut_coverage_html_reporter is

l_coverage_data := ut_coverage.get_coverage_data();

l_report_lines := ut_utils.clob_to_table(ut_coverage_report_html_helper.get_index( l_coverage_data, self.assets_path, self.project_name ));
for i in 1 .. l_report_lines.count loop
self.print_text( l_report_lines(i) );
end loop;
self.print_clob( ut_coverage_report_html_helper.get_index( l_coverage_data, self.assets_path, self.project_name ) );

(self as ut_reporter_base).after_calling_run(a_run);
end;
Expand Down
5 changes: 1 addition & 4 deletions source/reporters/ut_coverage_sonar_reporter.tpb
Original file line number Diff line number Diff line change
Expand Up @@ -140,10 +140,7 @@ create or replace type body ut_coverage_sonar_reporter is

l_coverage_data := ut_coverage.get_coverage_data();

l_report_lines := ut_utils.clob_to_table(get_coverage_xml( l_coverage_data ));
for i in 1 .. l_report_lines.count loop
self.print_text( l_report_lines(i) );
end loop;
self.print_clob( get_coverage_xml( l_coverage_data ) );

(self as ut_reporter_base).after_calling_run(a_run);
end;
Expand Down
5 changes: 1 addition & 4 deletions source/reporters/ut_coveralls_reporter.tpb
Original file line number Diff line number Diff line change
Expand Up @@ -154,10 +154,7 @@ create or replace type body ut_coveralls_reporter is

l_coverage_data := ut_coverage.get_coverage_data();

l_report_lines := ut_utils.clob_to_table(get_coverage_json( l_coverage_data ));
for i in 1 .. l_report_lines.count loop
self.print_text( l_report_lines(i) );
end loop;
self.print_clob( get_coverage_json( l_coverage_data ) );

(self as ut_reporter_base).after_calling_run(a_run);
end;
Expand Down
6 changes: 3 additions & 3 deletions source/reporters/ut_documentation_reporter.tpb
Original file line number Diff line number Diff line change
Expand Up @@ -62,17 +62,17 @@ create or replace type body ut_documentation_reporter is
end if;

-- reproduce the output from before/after procedures and the test
self.print_output(a_test.get_serveroutputs);
self.print_clob(a_test.get_serveroutputs);
end;

overriding member procedure after_calling_before_all(self in out nocopy ut_documentation_reporter, a_suite in ut_logical_suite) is
begin
self.print_output(treat(a_suite as ut_suite).before_all.serveroutput);
self.print_clob(treat(a_suite as ut_suite).before_all.serveroutput);
end;

overriding member procedure after_calling_after_all(self in out nocopy ut_documentation_reporter, a_suite in ut_logical_suite) is
begin
self.print_output(treat(a_suite as ut_suite).after_all.serveroutput);
self.print_clob(treat(a_suite as ut_suite).after_all.serveroutput);
end;

overriding member procedure after_calling_suite(self in out nocopy ut_documentation_reporter, a_suite ut_logical_suite) as
Expand Down
58 changes: 21 additions & 37 deletions source/reporters/ut_teamcity_reporter.tpb
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@ create or replace type body ut_teamcity_reporter is
/*
utPLSQL - Version X.X.X.X
Copyright 2016 - 2017 utPLSQL Project

Licensed under the Apache License, Version 2.0 (the "License"):
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
Expand Down Expand Up @@ -39,68 +39,52 @@ create or replace type body ut_teamcity_reporter is
overriding member procedure before_calling_test(self in out nocopy ut_teamcity_reporter, a_test in ut_test) is
l_test_full_name varchar2(4000);
begin

l_test_full_name := lower(a_test.item.owner_name) || '.' || lower(a_test.item.object_name) || '.' ||
lower(a_test.item.procedure_name);

self.print_text(ut_teamcity_reporter_helper.test_started(a_test_name => l_test_full_name
,a_capture_standard_output => true));

end;

overriding member procedure after_calling_test(self in out nocopy ut_teamcity_reporter, a_test in ut_test) is
l_assert ut_assert_result;
l_test_full_name varchar2(4000);
l_std_err_msg varchar2(32767);
procedure print_output(a_exectable ut_executable) is
l_lines ut_varchar2_list;
begin
if a_exectable is not null and a_exectable.is_defined and a_exectable.serveroutput is not null and
dbms_lob.getlength(a_exectable.serveroutput) > 0 then
l_lines := ut_utils.clob_to_table(a_exectable.serveroutput);
for i in 1 .. l_lines.count loop
self.print_text(l_lines(i));
end loop;
end if;
end;
begin
-- l_test_full_name := self.suite_names_stack(self.suite_names_stack.last) || ':' ||
-- nvl(replace(a_test.description, '.'), a_test.name);
l_test_full_name := lower(a_test.item.owner_name) || '.' || lower(a_test.item.object_name) || '.' ||
lower(a_test.item.procedure_name);

if a_test.result = ut_utils.tr_ignore then
self.print_text(ut_teamcity_reporter_helper.test_ignored(l_test_full_name));
else

-- reproduce the output from before/after procedures and the test
print_output(a_test.before_each);
print_output(a_test.before_test);
print_output(a_test.item);
print_output(a_test.after_test);
print_output(a_test.after_each);


self.print_clob(a_test.get_serveroutputs());

if a_test.result = ut_utils.tr_error then
if a_test.before_each.error_backtrace is not null then
l_std_err_msg := l_std_err_msg || 'Before each exception:' || chr(10) || a_test.before_each.error_backtrace || chr(10);
end if;

if a_test.before_test.error_backtrace is not null then
l_std_err_msg := l_std_err_msg || 'Before test exception:' || chr(10) || a_test.before_test.error_backtrace || chr(10);
end if;

if a_test.item.error_backtrace is not null then
l_std_err_msg := l_std_err_msg || 'Test exception:' || chr(10) || a_test.item.error_backtrace || chr(10);
end if;

if a_test.after_test.error_backtrace is not null then
l_std_err_msg := l_std_err_msg || 'After test exception:' || chr(10) || a_test.after_test.error_backtrace || chr(10);
end if;

if a_test.after_each.error_backtrace is not null then
l_std_err_msg := l_std_err_msg || 'After each exception:' || chr(10) || a_test.after_each.error_backtrace || chr(10);
end if;

self.print_text(ut_teamcity_reporter_helper.test_std_err(a_test_name => l_test_full_name
,a_out => trim(l_std_err_msg)));
self.print_text(ut_teamcity_reporter_helper.test_failed(a_test_name => l_test_full_name
Expand All @@ -109,9 +93,9 @@ create or replace type body ut_teamcity_reporter is
.message));
elsif a_test.results is not null and a_test.results.count > 0 then
for i in 1 .. a_test.results.count loop

l_assert := a_test.results(i);

if l_assert.result > ut_utils.tr_success then
self.print_text(ut_teamcity_reporter_helper.test_failed(a_test_name => l_test_full_name
,a_msg => l_assert.message
Expand All @@ -128,17 +112,17 @@ create or replace type body ut_teamcity_reporter is
-- Teamcity supports only a single failure message
exit;
end if;

end loop;
elsif a_test.result = ut_utils.tr_failure then
self.print_text(ut_teamcity_reporter_helper.test_failed(a_test_name => l_test_full_name
,a_msg => 'Test failed'));
end if;

self.print_text(ut_teamcity_reporter_helper.test_finished(l_test_full_name, trunc(a_test.execution_time * 1e3)));

end if;

end;

end;
Expand Down
18 changes: 4 additions & 14 deletions source/reporters/ut_xunit_reporter.tpb
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ create or replace type body ut_xunit_reporter is
if a_test.result = ut_utils.tr_error then
self.print_text('<error>');
self.print_text('<![CDATA[');
self.print_text(ut_utils.table_to_clob(a_test.get_error_stack_traces()));
self.print_clob(ut_utils.table_to_clob(a_test.get_error_stack_traces()));
self.print_text(']]>');
self.print_text('</error>');
elsif a_test.result > ut_utils.tr_success then
Expand All @@ -66,10 +66,7 @@ create or replace type body ut_xunit_reporter is
if l_output is not null then
self.print_text('<system-out>');
self.print_text('<![CDATA[');
l_lines := ut_utils.clob_to_table(l_output);
for i in 1 .. l_lines.count loop
self.print_text(l_lines(i));
end loop;
self.print_clob(l_output);
self.print_text(']]>');
self.print_text('</system-out>');
end if;
Expand All @@ -80,7 +77,6 @@ create or replace type body ut_xunit_reporter is
l_tests_count integer := a_suite.results_count.ignored_count + a_suite.results_count.success_count +
a_suite.results_count.failure_count + a_suite.results_count.errored_count;
l_suite ut_suite;
l_lines ut_varchar2_list;
begin
a_suite_id := a_suite_id + 1;
self.print_text('<testsuite tests="' || l_tests_count || '"' || ' id="' || a_suite_id || '"' || ' package="' ||
Expand All @@ -91,14 +87,8 @@ create or replace type body ut_xunit_reporter is
if l_suite.before_all.serveroutput is not null or l_suite.after_all.serveroutput is not null then
self.print_text('<system-out>');
self.print_text('<![CDATA[');
l_lines := ut_utils.clob_to_table(l_suite.before_all.serveroutput);
for i in 1 .. l_lines.count loop
self.print_text(l_lines(i));
end loop;
l_lines := ut_utils.clob_to_table(l_suite.after_all.serveroutput);
for i in 1 .. l_lines.count loop
self.print_text(l_lines(i));
end loop;
self.print_clob(l_suite.before_all.serveroutput);
self.print_clob(l_suite.after_all.serveroutput);
self.print_text(']]>');
self.print_text('</system-out>');
end if;
Expand Down