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

Skip to content

Commit 6f4e760

Browse files
committed
implemented detailed warning
1 parent 65d0169 commit 6f4e760

2 files changed

Lines changed: 18 additions & 15 deletions

File tree

source/core/types/ut_suite_item.tpb

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,34 +2,31 @@ create or replace type body ut_suite_item as
22
/*
33
utPLSQL - Version X.X.X.X
44
Copyright 2016 - 2017 utPLSQL Project
5-
5+
66
Licensed under the Apache License, Version 2.0 (the "License"):
77
you may not use this file except in compliance with the License.
88
You may obtain a copy of the License at
9-
9+
1010
http://www.apache.org/licenses/LICENSE-2.0
11-
11+
1212
Unless required by applicable law or agreed to in writing, software
1313
distributed under the License is distributed on an "AS IS" BASIS,
1414
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1515
See the License for the specific language governing permissions and
1616
limitations under the License.
1717
*/
1818

19-
member procedure init(
20-
self in out nocopy ut_suite_item, a_object_owner varchar2, a_object_name varchar2, a_name varchar2,
21-
a_description varchar2, a_path varchar2, a_rollback_type integer, a_disabled_flag boolean
22-
) is
19+
member procedure init(self in out nocopy ut_suite_item, a_object_owner varchar2, a_object_name varchar2, a_name varchar2, a_description varchar2, a_path varchar2, a_rollback_type integer, a_disabled_flag boolean) is
2320
begin
24-
self.object_owner := a_object_owner;
25-
self.object_name := lower(trim(a_object_name));
26-
self.name := lower(trim(a_name));
27-
self.description := a_description;
28-
self.path := nvl(lower(trim(a_path)), self.object_name);
21+
self.object_owner := a_object_owner;
22+
self.object_name := lower(trim(a_object_name));
23+
self.name := lower(trim(a_name));
24+
self.description := a_description;
25+
self.path := nvl(lower(trim(a_path)), self.object_name);
2926
self.rollback_type := a_rollback_type;
3027
self.disabled_flag := ut_utils.boolean_to_int(a_disabled_flag);
3128
self.results_count := ut_results_counter();
32-
self.warnings := ut_varchar2_list();
29+
self.warnings := ut_varchar2_list();
3330
end;
3431

3532
member procedure set_disabled_flag(self in out nocopy ut_suite_item, a_disabled_flag boolean) is
@@ -67,7 +64,11 @@ create or replace type body ut_suite_item as
6764
end if;
6865
exception
6966
when ex_savepoint_not_exists then
70-
put_warning('Savepoint not established. Implicit commit might have occured.');
67+
put_warning('Unable to perform automatic rollback after ' || case self_type when 'UT_TEST' then 'test' when
68+
'UT_LOGICAL_SUITE' then 'test suite' when 'UT_SUITE' then 'test suite'
69+
end || ': ' || self.path || '
70+
An implicit or explicit commit/rollback occurred.
71+
Use the %rollback(manual) annotation or remove commits/rollback/ddl statements that are causing the issue.');
7172
end;
7273

7374
member function execution_time return number is

tests/ut_test/ut_test.ReportWarningOnRollbackFailed.sql

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,9 @@ begin
3434
dbms_lob.append(l_output,l_output_data(i));
3535
end loop;
3636

37-
if l_output like '%Warnings:%Savepoint not established. Implicit commit might have occured.%0 disabled, 1 warning(s)%' then
37+
if l_output like '%Warnings:%Unable to perform automatic rollback after test suite: UT_OUTPUT_TEST_ROLLBACK%
38+
An implicit or explicit commit/rollback occurred.%
39+
Use the %rollback(manual) annotation or remove commits/rollback/ddl statements that are causing the issue.%0 disabled, 1 warning(s)%' then
3840
:test_result := ut_utils.tr_success;
3941
end if;
4042

0 commit comments

Comments
 (0)