@@ -174,91 +174,112 @@ create or replace package body ut_suite_manager is
174174 a_level pls_integer,
175175 a_prev_level pls_integer,
176176 a_items_at_level t_item_levels
177- ) return ut_logical_suite is
177+ ) return ut_suite_item is
178+ l_result ut_suite_item;
178179 begin
179- return
180180 case a_rows( a_idx ).self_type
181181 when 'UT_SUITE' then
182- case when a_prev_level > a_level then
183- ut_suite(
184- self_type => a_rows( a_idx ).self_type,
185- object_owner => a_rows( a_idx ).object_owner, object_name => lower( a_rows( a_idx ).object_name),
186- name => lower( a_rows( a_idx ).name), description => a_rows( a_idx ).description, path => a_rows( a_idx ).path,
187- rollback_type => a_rows( a_idx ).rollback_type, disabled_flag => a_rows( a_idx ).disabled_flag,
188- line_no => a_rows( a_idx ).line_no, parse_time => a_rows( a_idx ).parse_time,
189- start_time => null, end_time => null, result => null, warnings => a_rows( a_idx ).warnings,
190- results_count => ut_results_counter(), transaction_invalidators => ut_varchar2_list(),
191- items => a_items_at_level(a_prev_level),
192- before_all_list => sort_by_seq_no( a_rows( a_idx ).before_all_list), after_all_list => sort_by_seq_no(
193- a_rows( a_idx ).after_all_list)
194- )
195- else
196- ut_suite(
197- self_type => a_rows( a_idx ).self_type,
198- object_owner => a_rows( a_idx ).object_owner, object_name => lower( a_rows( a_idx ).object_name),
199- name => lower( a_rows( a_idx ).name), description => a_rows( a_idx ).description, path => a_rows( a_idx ).path,
200- rollback_type => a_rows( a_idx ).rollback_type, disabled_flag => a_rows( a_idx ).disabled_flag,
201- line_no => a_rows( a_idx ).line_no, parse_time => a_rows( a_idx ).parse_time,
202- start_time => null, end_time => null, result => null, warnings => a_rows( a_idx ).warnings,
203- results_count => ut_results_counter(), transaction_invalidators => ut_varchar2_list(),
204- items => ut_suite_items(),
205- before_all_list => sort_by_seq_no( a_rows( a_idx ).before_all_list), after_all_list => sort_by_seq_no(
206- a_rows( a_idx ).after_all_list)
207- )
208- end
182+ l_result :=
183+ case when a_prev_level > a_level then
184+ ut_suite(
185+ self_type => a_rows( a_idx ).self_type,
186+ object_owner => a_rows( a_idx ).object_owner, object_name => lower( a_rows( a_idx ).object_name),
187+ name => lower( a_rows( a_idx ).name), description => a_rows( a_idx ).description, path => a_rows( a_idx ).path,
188+ rollback_type => a_rows( a_idx ).rollback_type, disabled_flag => a_rows( a_idx ).disabled_flag,
189+ line_no => a_rows( a_idx ).line_no, parse_time => a_rows( a_idx ).parse_time,
190+ start_time => null, end_time => null, result => null, warnings => a_rows( a_idx ).warnings,
191+ results_count => ut_results_counter(), transaction_invalidators => ut_varchar2_list(),
192+ items => a_items_at_level(a_prev_level),
193+ before_all_list => sort_by_seq_no( a_rows( a_idx ).before_all_list), after_all_list => sort_by_seq_no(
194+ a_rows( a_idx ).after_all_list)
195+ )
196+ else
197+ ut_suite(
198+ self_type => a_rows( a_idx ).self_type,
199+ object_owner => a_rows( a_idx ).object_owner, object_name => lower( a_rows( a_idx ).object_name),
200+ name => lower( a_rows( a_idx ).name), description => a_rows( a_idx ).description, path => a_rows( a_idx ).path,
201+ rollback_type => a_rows( a_idx ).rollback_type, disabled_flag => a_rows( a_idx ).disabled_flag,
202+ line_no => a_rows( a_idx ).line_no, parse_time => a_rows( a_idx ).parse_time,
203+ start_time => null, end_time => null, result => null, warnings => a_rows( a_idx ).warnings,
204+ results_count => ut_results_counter(), transaction_invalidators => ut_varchar2_list(),
205+ items => ut_suite_items(),
206+ before_all_list => sort_by_seq_no( a_rows( a_idx ).before_all_list), after_all_list => sort_by_seq_no(
207+ a_rows( a_idx ).after_all_list)
208+ )
209+ end;
209210 when 'UT_SUITE_CONTEXT' then
210- case when a_prev_level > a_level then
211- ut_suite_context(
212- self_type => a_rows( a_idx ).self_type,
213- object_owner => a_rows( a_idx ).object_owner, object_name => lower( a_rows( a_idx ).object_name),
214- name => lower( a_rows( a_idx ).name), description => a_rows( a_idx ).description, path => a_rows( a_idx ).path,
215- rollback_type => a_rows( a_idx ).rollback_type, disabled_flag => a_rows( a_idx ).disabled_flag,
216- line_no => a_rows( a_idx ).line_no, parse_time => a_rows( a_idx ).parse_time,
217- start_time => null, end_time => null, result => null, warnings => a_rows( a_idx ).warnings,
218- results_count => ut_results_counter(), transaction_invalidators => ut_varchar2_list(),
219- items => a_items_at_level(a_prev_level),
220- before_all_list => sort_by_seq_no( a_rows( a_idx ).before_all_list), after_all_list => sort_by_seq_no(
221- a_rows( a_idx ).after_all_list)
222- )
223- else
224- ut_suite_context(
225- self_type => a_rows( a_idx ).self_type,
226- object_owner => a_rows( a_idx ).object_owner, object_name => lower( a_rows( a_idx ).object_name),
227- name => lower( a_rows( a_idx ).name), description => a_rows( a_idx ).description, path => a_rows( a_idx ).path,
228- rollback_type => a_rows( a_idx ).rollback_type, disabled_flag => a_rows( a_idx ).disabled_flag,
229- line_no => a_rows( a_idx ).line_no, parse_time => a_rows( a_idx ).parse_time,
230- start_time => null, end_time => null, result => null, warnings => a_rows( a_idx ).warnings,
231- results_count => ut_results_counter(), transaction_invalidators => ut_varchar2_list(),
232- items => ut_suite_items(),
233- before_all_list => sort_by_seq_no( a_rows( a_idx ).before_all_list), after_all_list => sort_by_seq_no(
234- a_rows( a_idx ).after_all_list)
235- )
236- end
211+ l_result :=
212+ case when a_prev_level > a_level then
213+ ut_suite_context(
214+ self_type => a_rows( a_idx ).self_type,
215+ object_owner => a_rows( a_idx ).object_owner, object_name => lower( a_rows( a_idx ).object_name),
216+ name => lower( a_rows( a_idx ).name), description => a_rows( a_idx ).description, path => a_rows( a_idx ).path,
217+ rollback_type => a_rows( a_idx ).rollback_type, disabled_flag => a_rows( a_idx ).disabled_flag,
218+ line_no => a_rows( a_idx ).line_no, parse_time => a_rows( a_idx ).parse_time,
219+ start_time => null, end_time => null, result => null, warnings => a_rows( a_idx ).warnings,
220+ results_count => ut_results_counter(), transaction_invalidators => ut_varchar2_list(),
221+ items => a_items_at_level(a_prev_level),
222+ before_all_list => sort_by_seq_no( a_rows( a_idx ).before_all_list), after_all_list => sort_by_seq_no(
223+ a_rows( a_idx ).after_all_list)
224+ )
225+ else
226+ ut_suite_context(
227+ self_type => a_rows( a_idx ).self_type,
228+ object_owner => a_rows( a_idx ).object_owner, object_name => lower( a_rows( a_idx ).object_name),
229+ name => lower( a_rows( a_idx ).name), description => a_rows( a_idx ).description, path => a_rows( a_idx ).path,
230+ rollback_type => a_rows( a_idx ).rollback_type, disabled_flag => a_rows( a_idx ).disabled_flag,
231+ line_no => a_rows( a_idx ).line_no, parse_time => a_rows( a_idx ).parse_time,
232+ start_time => null, end_time => null, result => null, warnings => a_rows( a_idx ).warnings,
233+ results_count => ut_results_counter(), transaction_invalidators => ut_varchar2_list(),
234+ items => ut_suite_items(),
235+ before_all_list => sort_by_seq_no( a_rows( a_idx ).before_all_list), after_all_list => sort_by_seq_no(
236+ a_rows( a_idx ).after_all_list)
237+ )
238+ end;
237239 when 'UT_LOGICAL_SUITE' then
238- case when a_prev_level > a_level then
239- ut_logical_suite(
240- self_type => a_rows( a_idx ).self_type,
241- object_owner => a_rows( a_idx ).object_owner, object_name => lower( a_rows( a_idx ).object_name),
242- name => lower( a_rows( a_idx ).name), description => a_rows( a_idx ).description, path => a_rows( a_idx ).path,
243- rollback_type => a_rows( a_idx ).rollback_type, disabled_flag => a_rows( a_idx ).disabled_flag,
244- line_no => a_rows( a_idx ).line_no, parse_time => a_rows( a_idx ).parse_time,
245- start_time => null, end_time => null, result => null, warnings => a_rows( a_idx ).warnings,
246- results_count => ut_results_counter(), transaction_invalidators => ut_varchar2_list(),
247- items => a_items_at_level(a_prev_level)
248- )
249- else
250- ut_logical_suite(
251- self_type => a_rows( a_idx ).self_type,
252- object_owner => a_rows( a_idx ).object_owner, object_name => lower( a_rows( a_idx ).object_name),
253- name => lower( a_rows( a_idx ).name), description => a_rows( a_idx ).description, path => a_rows( a_idx ).path,
254- rollback_type => a_rows( a_idx ).rollback_type, disabled_flag => a_rows( a_idx ).disabled_flag,
255- line_no => a_rows( a_idx ).line_no, parse_time => a_rows( a_idx ).parse_time,
256- start_time => null, end_time => null, result => null, warnings => a_rows( a_idx ).warnings,
240+ l_result :=
241+ case when a_prev_level > a_level then
242+ ut_logical_suite(
243+ self_type => a_rows( a_idx ).self_type,
244+ object_owner => a_rows( a_idx ).object_owner, object_name => lower( a_rows( a_idx ).object_name),
245+ name => lower( a_rows( a_idx ).name), description => a_rows( a_idx ).description, path => a_rows( a_idx ).path,
246+ rollback_type => a_rows( a_idx ).rollback_type, disabled_flag => a_rows( a_idx ).disabled_flag,
247+ line_no => a_rows( a_idx ).line_no, parse_time => a_rows( a_idx ).parse_time,
248+ start_time => null, end_time => null, result => null, warnings => a_rows( a_idx ).warnings,
249+ results_count => ut_results_counter(), transaction_invalidators => ut_varchar2_list(),
250+ items => a_items_at_level(a_prev_level)
251+ )
252+ else
253+ ut_logical_suite(
254+ self_type => a_rows( a_idx ).self_type,
255+ object_owner => a_rows( a_idx ).object_owner, object_name => lower( a_rows( a_idx ).object_name),
256+ name => lower( a_rows( a_idx ).name), description => a_rows( a_idx ).description, path => a_rows( a_idx ).path,
257+ rollback_type => a_rows( a_idx ).rollback_type, disabled_flag => a_rows( a_idx ).disabled_flag,
258+ line_no => a_rows( a_idx ).line_no, parse_time => a_rows( a_idx ).parse_time,
259+ start_time => null, end_time => null, result => null, warnings => a_rows( a_idx ).warnings,
260+ results_count => ut_results_counter(), transaction_invalidators => ut_varchar2_list(),
261+ items => ut_suite_items()
262+ )
263+ end;
264+ when 'UT_TEST' then
265+ l_result :=
266+ ut_test(
267+ self_type => a_rows(a_idx).self_type,
268+ object_owner => a_rows(a_idx).object_owner, object_name => lower(a_rows(a_idx).object_name),
269+ name => lower(a_rows(a_idx).name), description => a_rows(a_idx).description, path => a_rows(a_idx).path,
270+ rollback_type => a_rows(a_idx).rollback_type, disabled_flag => a_rows(a_idx).disabled_flag,
271+ line_no => a_rows(a_idx).line_no, parse_time => a_rows(a_idx).parse_time,
272+ start_time => null, end_time => null, result => null, warnings => a_rows(a_idx).warnings,
257273 results_count => ut_results_counter(), transaction_invalidators => ut_varchar2_list(),
258- items => ut_suite_items()
259- )
260- end
261- end;
274+ before_each_list => sort_by_seq_no(a_rows(a_idx).before_each_list), before_test_list => sort_by_seq_no(a_rows(a_idx).before_test_list),
275+ item => a_rows(a_idx).item,
276+ after_test_list => sort_by_seq_no(a_rows(a_idx).after_test_list), after_each_list => sort_by_seq_no(a_rows(a_idx).after_each_list),
277+ all_expectations => ut_expectation_results(), failed_expectations => ut_expectation_results(),
278+ parent_error_stack_trace => null, expected_error_codes => a_rows(a_idx).expected_error_codes
279+ );
280+ end case;
281+ l_result.results_count.warnings_count := l_result.warnings.count;
282+ return l_result;
262283 end;
263284
264285 procedure reconstruct_from_cache(
@@ -283,26 +304,8 @@ create or replace package body ut_suite_manager is
283304 l_items_at_level(l_level) := ut_suite_items();
284305 end if;
285306 l_items_at_level(l_level).extend;
286- if l_rows(l_idx).self_type = 'UT_TEST' then
287- l_items_at_level(l_level)(l_items_at_level(l_level).last) :=
288- ut_test(
289- self_type => l_rows(l_idx).self_type,
290- object_owner => l_rows(l_idx).object_owner, object_name => lower(l_rows(l_idx).object_name),
291- name => lower(l_rows(l_idx).name), description => l_rows(l_idx).description, path => l_rows(l_idx).path,
292- rollback_type => l_rows(l_idx).rollback_type, disabled_flag => l_rows(l_idx).disabled_flag,
293- line_no => l_rows(l_idx).line_no, parse_time => l_rows(l_idx).parse_time,
294- start_time => null, end_time => null, result => null, warnings => l_rows(l_idx).warnings,
295- results_count => ut_results_counter(), transaction_invalidators => ut_varchar2_list(),
296- before_each_list => sort_by_seq_no(l_rows(l_idx).before_each_list), before_test_list => sort_by_seq_no(l_rows(l_idx).before_test_list),
297- item => l_rows(l_idx).item,
298- after_test_list => sort_by_seq_no(l_rows(l_idx).after_test_list), after_each_list => sort_by_seq_no(l_rows(l_idx).after_each_list),
299- all_expectations => ut_expectation_results(), failed_expectations => ut_expectation_results(),
300- parent_error_stack_trace => null, expected_error_codes => l_rows(l_idx).expected_error_codes
301- );
302- else
303- pragma inline(get_logical_suite, 'YES');
304- l_items_at_level(l_level)(l_items_at_level(l_level).last) := get_logical_suite(l_rows, l_idx, l_level,l_prev_level, l_items_at_level );
305- end if;
307+ pragma inline(get_logical_suite, 'YES');
308+ l_items_at_level(l_level)(l_items_at_level(l_level).last) := get_logical_suite(l_rows, l_idx, l_level,l_prev_level, l_items_at_level );
306309 else
307310 a_suites.extend;
308311 pragma inline(get_logical_suite, 'YES');
0 commit comments