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

Skip to content

Commit ea2573e

Browse files
authored
Merge pull request #373 from Pazus/issue-350
Fixed indexing of warnings for documentation reporter
2 parents e49f6df + 7033622 commit ea2573e

3 files changed

Lines changed: 64 additions & 1 deletion

File tree

source/reporters/ut_documentation_reporter.tpb

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,10 @@ create or replace type body ut_documentation_reporter is
8585

8686
overriding member procedure after_calling_run(self in out nocopy ut_documentation_reporter, a_run in ut_run) as
8787
l_summary_text varchar2(4000);
88+
l_warning_index pls_integer := 0;
89+
-- make all warning indexes uniformly indented
90+
c_warnings_lpad constant integer := length(to_char(a_run.results_count.warnings_count));
91+
8892
procedure print_failure_for_expectation(a_expectation ut_expectation_result) is
8993
l_lines ut_varchar2_list;
9094
begin
@@ -151,7 +155,8 @@ create or replace type body ut_documentation_reporter is
151155

152156
if a_item.warnings is not null and a_item.warnings.count > 0 then
153157
for i in 1 .. a_item.warnings.count loop
154-
self.print_text(' ' || i || ') ' || a_item.path);
158+
l_warning_index := l_warning_index + 1;
159+
self.print_text(' ' || lpad(l_warning_index, c_warnings_lpad) || ') ' || a_item.path);
155160
self.lvl := self.lvl + 3;
156161
self.print_red_text(a_item.warnings(i));
157162
self.lvl := self.lvl - 3;
@@ -177,6 +182,7 @@ create or replace type body ut_documentation_reporter is
177182
print_failures_details(a_run);
178183
print_warnings(a_run);
179184
self.print_text('Finished in ' || a_run.execution_time || ' seconds');
185+
180186
l_summary_text :=
181187
a_run.results_count.total_count || ' tests, '
182188
|| a_run.results_count.failure_count || ' failed, ' || a_run.results_count.errored_count || ' errored, '

tests/RunAll.sql

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,7 @@ exec ut_coverage.coverage_start_develop();
134134
@@lib/RunTest.sql ut_reporters/ut_xunit_reporter.ProducesExpectedOutputs.sql
135135
@@lib/RunTest.sql ut_reporters/ut_html_reporter.UserOverrideSchemaCoverage.sql
136136
@@lib/RunTest.sql ut_reporters/ut_html_reporter.DefaultSchemaCoverage.sql
137+
@@lib/RunTest.sql ut_reporters/ut_documentation_reporter.reportMultipleWarnings.sql
137138
@@lib/RunTest.sql ut_reporters/ut_xunit_reporter.ReportOnSuiteWithoutDesc.sql
138139
@@lib/RunTest.sql ut_reporters/ut_xunit_reporter.ReportOnTestWithoutDesc.sql
139140
@@lib/RunTest.sql ut_reporters/ut_documentation_reporter.reportTestTiming.sql
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
set termout off
2+
create or replace package tst_documrep_mult_warn as
3+
--%suite
4+
5+
--%test
6+
procedure test1;
7+
end;
8+
/
9+
10+
create or replace package body tst_documrep_mult_warn as
11+
procedure test1 is begin commit; end;
12+
end;
13+
/
14+
create or replace package tst_documrep_mult_warn2 as
15+
--%suite
16+
17+
--%test
18+
procedure test1;
19+
end;
20+
/
21+
22+
create or replace package body tst_documrep_mult_warn2 as
23+
procedure test1 is begin commit; end;
24+
end;
25+
/
26+
27+
set termout on
28+
29+
declare
30+
l_test_report ut_varchar2_list;
31+
l_output_data ut_varchar2_list;
32+
l_output varchar2(32767);
33+
l_expected varchar2(32767);
34+
begin
35+
l_expected := q'[%Warnings:
36+
%1)%tst_documrep_mult_warn%
37+
%2)%tst_documrep_mult_warn%]';
38+
39+
--act
40+
select *
41+
bulk collect into l_output_data
42+
from table(ut.run(ut_varchar2_list('tst_documrep_mult_warn','tst_documrep_mult_warn2'),ut_documentation_reporter()));
43+
44+
l_output := ut_utils.table_to_clob(l_output_data);
45+
46+
--assert
47+
if l_output like l_expected then
48+
:test_result := ut_utils.tr_success;
49+
else
50+
dbms_output.put_line('Actual:"'||l_output||'"');
51+
end if;
52+
end;
53+
/
54+
55+
drop package tst_documrep_mult_warn;
56+
drop package tst_documrep_mult_warn2;

0 commit comments

Comments
 (0)