11create or replace package body test_coverage_standalone is
22
3- procedure coverage_without_ut_run is
4- l_coverage_run_id raw(32) := sys_guid();
5- l_actual ut3_develop.ut_varchar2_list;
3+ function run_coverage_twice(a_overage_run_id raw, a_object_name varchar2) return clob is
64 l_expected clob;
75 l_block_cov clob;
6+ l_file_path varchar2(250);
87 begin
8+ l_file_path := 'ut3_develop.'||a_object_name;
99 --Arrange
1010 if ut3_tester_helper.coverage_helper.block_coverage_available then
11- l_block_cov := '% <line number="5 " hits="4 " branch="true" condition-coverage="67% (2/3)"/>';
11+ l_block_cov := '<line number="4 " hits="5 " branch="true" condition-coverage="67% (2/3)"/>';
1212 else
13- l_block_cov := '% <line number="5 " hits="4 " branch="false"/>';
13+ l_block_cov := '<line number="4 " hits="5 " branch="false"/>';
1414 end if;
15- l_expected := '%<source>ut3_tester_helper.coverage_pkg</source>' ||
16- '%<package name="COVERAGE_PKG" ' ||
17- '%<class name="COVERAGE_PKG" filename="ut3_tester_helper.coverage_pkg"' ||
18- '%<lines>' ||
19- l_block_cov ||
20- '%<line number="7" hits="1" branch="false"/>%';
21- --Act
22- ut3_tester_helper.coverage_helper.run_coverage_job(l_coverage_run_id, 1);
23- ut3_tester_helper.coverage_helper.run_coverage_job(l_coverage_run_id, 3);
15+ l_expected :=
16+ q'[<?xml version="1.0"?>
17+ <!DOCTYPE coverage SYSTEM "http://cobertura.sourceforge.net/xml/coverage-04.dtd">
18+ <coverage line-rate="0" branch-rate="0.0" lines-covered="2" lines-valid="2" branches-covered="0" branches-valid="0" complexity="0" version="1" timestamp="%">
19+ <sources>
20+ <source>]'||l_file_path||q'[</source>
21+ </sources>
22+ <packages>
23+ <package name="]'||upper(a_object_name)||q'[" line-rate="0.0" branch-rate="0.0" complexity="0.0">
24+ <class name="]'||upper(a_object_name)||q'[" filename="]'||l_file_path||q'[" line-rate="0.0" branch-rate="0.0" complexity="0.0">
25+ <lines>
26+ ]'||l_block_cov||q'[
27+ <line number="6" hits="1" branch="false"/>
28+ </lines>
29+ </class>
30+ </package>
31+ </packages>
32+ </coverage>]';
33+ --Act
34+ ut3_tester_helper.coverage_helper.run_coverage_job(a_overage_run_id, 1);
35+ ut3_tester_helper.coverage_helper.run_coverage_job(a_overage_run_id, 3);
36+ return l_expected;
37+ end;
38+
39+ procedure coverage_without_ut_run is
40+ l_coverage_run_id raw(32) := sys_guid();
41+ l_actual ut3_develop.ut_varchar2_list;
42+ l_expected clob;
43+ l_name varchar2(250);
44+ begin
45+ l_name := ut3_tester_helper.coverage_helper.covered_package_name;
46+
47+ --Arrange and Act
48+ l_expected := run_coverage_twice(l_coverage_run_id, l_name);
2449
25- --Assert
2650 select *
2751 bulk collect into l_actual
2852 from
2953 table (
3054 ut3_develop.ut_coverage_cobertura_reporter( ).get_report(
3155 ut3_develop.ut_coverage_options(
3256 coverage_run_id => l_coverage_run_id,
33- include_objects => ut3_develop.ut_varchar2_rows('COVERAGE_PKG' ),
34- schema_names => ut3_develop.ut_varchar2_rows('UT3_TESTER_HELPER ')
57+ include_objects => ut3_develop.ut_varchar2_rows(l_name ),
58+ schema_names => ut3_develop.ut_varchar2_rows('UT3_DEVELOP ')
3559 )
3660 )
3761 );
62+
63+ --Assert
3864 ut.expect(ut3_tester_helper.main_helper.table_to_clob(l_actual)).to_be_like( l_expected );
3965 end;
4066
@@ -43,35 +69,25 @@ create or replace package body test_coverage_standalone is
4369 l_coverage_cursor sys_refcursor;
4470 l_actual ut3_develop.ut_varchar2_list;
4571 l_expected clob;
46- l_block_cov clob ;
72+ l_name varchar2(250) ;
4773 begin
48- --Arrange
49- if ut3_tester_helper.coverage_helper.block_coverage_available then
50- l_block_cov := '%<line number="5" hits="4" branch="true" condition-coverage="67% (2/3)"/>';
51- else
52- l_block_cov := '%<line number="5" hits="4" branch="false"/>';
53- end if;
54- l_expected := '%<source>ut3_tester_helper.coverage_pkg</source>' ||
55- '%<package name="COVERAGE_PKG" ' ||
56- '%<class name="COVERAGE_PKG" filename="ut3_tester_helper.coverage_pkg"' ||
57- '%<lines>' ||
58- l_block_cov ||
59- '%<line number="7" hits="1" branch="false"/>%';
60- --Act
61- ut3_tester_helper.coverage_helper.run_coverage_job(l_coverage_run_id, 1);
62- ut3_tester_helper.coverage_helper.run_coverage_job(l_coverage_run_id, 3);
74+ l_name := ut3_tester_helper.coverage_helper.covered_package_name;
75+
76+ --Arrange and Act
77+ l_expected := run_coverage_twice(l_coverage_run_id, l_name);
6378
64- --Assert
6579 l_coverage_cursor :=
6680 ut3_develop.ut_coverage_cobertura_reporter( ).get_report_cursor(
6781 ut3_develop.ut_coverage_options(
6882 coverage_run_id => l_coverage_run_id,
69- include_objects => ut3_develop.ut_varchar2_rows('COVERAGE_PKG' ),
70- schema_names => ut3_develop.ut_varchar2_rows('UT3_TESTER_HELPER ')
83+ include_objects => ut3_develop.ut_varchar2_rows(l_name ),
84+ schema_names => ut3_develop.ut_varchar2_rows('UT3_DEVELOP ')
7185 )
7286 );
7387 fetch l_coverage_cursor bulk collect into l_actual;
7488 close l_coverage_cursor;
89+
90+ --Assert
7591 ut.expect(ut3_tester_helper.main_helper.table_to_clob(l_actual)).to_be_like( l_expected );
7692 end;
7793
0 commit comments