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

Skip to content

Commit efb2e11

Browse files
committed
Initial checkin
1 parent c5f640b commit efb2e11

3 files changed

Lines changed: 151 additions & 4 deletions

File tree

source/api/ut.pkb

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -332,7 +332,7 @@ create or replace package body ut is
332332
) return ut_varchar2_rows pipelined is
333333
l_reporter ut_reporter_base := coalesce(a_reporter,
334334
ut_documentation_reporter());
335-
l_paths ut_varchar2_list := ut_varchar2_list(coalesce(a_path, sys_context('userenv', 'current_schema')));
335+
l_paths ut_varchar2_list := coalesce(ut_utils.string_to_table(a_string => a_path,a_delimiter => ','),ut_varchar2_list(sys_context('userenv', 'current_schema')));
336336
l_lines sys_refcursor;
337337
l_line varchar2(4000);
338338
begin
@@ -372,7 +372,7 @@ create or replace package body ut is
372372
a_client_character_set varchar2 := null
373373
) return ut_varchar2_rows pipelined is
374374
l_reporter ut_reporter_base := coalesce(a_reporter, ut_documentation_reporter());
375-
l_paths ut_varchar2_list := ut_varchar2_list(coalesce(a_path, sys_context('userenv', 'current_schema')));
375+
l_paths ut_varchar2_list := coalesce(ut_utils.string_to_table(a_string => a_path,a_delimiter => ','),ut_varchar2_list(sys_context('userenv', 'current_schema')));
376376
l_lines sys_refcursor;
377377
l_line varchar2(4000);
378378
begin
@@ -519,7 +519,7 @@ create or replace package body ut is
519519
a_exclude_objects ut_varchar2_list := null,
520520
a_client_character_set varchar2 := null
521521
) is
522-
l_paths ut_varchar2_list := ut_varchar2_list(coalesce(a_path, sys_context('userenv', 'current_schema')));
522+
l_paths ut_varchar2_list := coalesce(ut_utils.string_to_table(a_string => a_path,a_delimiter => ','),ut_varchar2_list(sys_context('userenv', 'current_schema')));
523523
begin
524524
ut.run(
525525
l_paths,
@@ -545,7 +545,7 @@ create or replace package body ut is
545545
a_exclude_objects ut_varchar2_list := null,
546546
a_client_character_set varchar2 := null
547547
) is
548-
l_paths ut_varchar2_list := ut_varchar2_list(coalesce(a_path, sys_context('userenv', 'current_schema')));
548+
l_paths ut_varchar2_list := coalesce(ut_utils.string_to_table(a_string => a_path,a_delimiter => ','),ut_varchar2_list(sys_context('userenv', 'current_schema')));
549549
begin
550550
ut.run(
551551
l_paths,

test/api/test_ut_run.pkb

Lines changed: 124 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -202,6 +202,130 @@ end;]';
202202
begin
203203
execute immediate 'drop package invalid_pckag_that_revalidates';
204204
execute immediate 'drop package parent_specs';
205+
end;
206+
207+
procedure create_test_csl_packages is
208+
pragma autonomous_transaction;
209+
begin
210+
execute immediate q'[
211+
create or replace package test_csl_names1 as
212+
--%suite
213+
--%suitepath(test_csl_names)
214+
215+
--%test
216+
procedure one_is_one;
217+
218+
--%test
219+
procedure two_is_two;
220+
221+
end;
222+
]';
223+
224+
execute immediate q'{
225+
create or replace package body test_csl_names1 as
226+
227+
procedure one_is_one is
228+
begin
229+
ut3.ut.expect(1).to_equal(1);
230+
end;
231+
232+
procedure two_is_two is
233+
begin
234+
ut3.ut.expect(2).to_equal(2);
235+
end;
236+
237+
end;
238+
}';
239+
240+
execute immediate q'[
241+
create or replace package test_csl_names2 as
242+
--%suite
243+
--%suitepath(test_csl_names)
244+
245+
--%test
246+
procedure one_is_one;
247+
248+
--%test
249+
procedure two_is_two;
250+
251+
end;
252+
]';
253+
254+
execute immediate q'{
255+
create or replace package body test_csl_names2 as
256+
257+
procedure one_is_one is
258+
begin
259+
ut3.ut.expect(1).to_equal(1);
260+
end;
261+
262+
procedure two_is_two is
263+
begin
264+
ut3.ut.expect(2).to_equal(2);
265+
end;
266+
267+
end;
268+
}';
269+
270+
end;
271+
272+
procedure drop_test_csl_packages is
273+
pragma autonomous_transaction;
274+
begin
275+
execute immediate 'drop package test_csl_names1';
276+
execute immediate 'drop package test_csl_names2';
277+
end;
278+
279+
procedure pass_varchar2_name_list is
280+
l_results ut3.ut_varchar2_list;
281+
l_actual clob;
282+
begin
283+
select *
284+
bulk collect into l_results
285+
from table(ut3.ut.run(ut3.ut_varchar2_list('test_csl_names1','test_csl_names2')));
286+
287+
l_actual := ut3.ut_utils.table_to_clob(l_results);
288+
ut.expect(l_actual).to_be_like('%Finished in % seconds
289+
%4 tests, 0 failed, 0 errored, 0 disabled, 0 warning(s)%');
290+
end;
291+
292+
procedure pass_varchar2_name is
293+
l_results ut3.ut_varchar2_list;
294+
l_actual clob;
295+
begin
296+
select *
297+
bulk collect into l_results
298+
from table(ut3.ut.run('test_csl_names1'));
299+
300+
l_actual := ut3.ut_utils.table_to_clob(l_results);
301+
ut.expect(l_actual).to_be_like('%Finished in % seconds
302+
%2 tests, 0 failed, 0 errored, 0 disabled, 0 warning(s)%');
303+
end;
304+
305+
procedure pass_varchar2_suite_csl is
306+
l_results ut3.ut_varchar2_list;
307+
l_actual clob;
308+
begin
309+
select *
310+
bulk collect into l_results
311+
from table(ut3.ut.run('test_csl_names1,test_csl_names2'));
312+
313+
l_actual := ut3.ut_utils.table_to_clob(l_results);
314+
ut.expect(l_actual).to_be_like('%Finished in % seconds
315+
%4 tests, 0 failed, 0 errored, 0 disabled, 0 warning(s)%');
316+
end;
317+
318+
procedure pass_varchar2_test_csl is
319+
l_results ut3.ut_varchar2_list;
320+
l_actual clob;
321+
begin
322+
select *
323+
bulk collect into l_results
324+
from table(ut3.ut.run('test_csl_names1.one_is_one,test_csl_names2.one_is_one'));
325+
326+
l_actual := ut3.ut_utils.table_to_clob(l_results);
327+
ut.expect(l_actual).to_be_like('%Finished in % seconds
328+
%2 tests, 0 failed, 0 errored, 0 disabled, 0 warning(s)%');
205329
end;
206330

207331
end;

test/api/test_ut_run.pks

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,29 @@ create or replace package test_ut_run is
2222
procedure run_and_revalidate_specs;
2323
procedure generate_invalid_spec;
2424
procedure drop_test_package;
25+
26+
procedure create_test_csl_packages;
27+
procedure drop_test_csl_packages;
28+
29+
--%test( Pass name of tests as varchar2_list )
30+
--%beforetest(create_test_csl_packages)
31+
--%aftertest(drop_test_csl_packages)
32+
procedure pass_varchar2_name_list;
33+
34+
--%test( Pass single test name as varchar2 )
35+
--%beforetest(create_test_csl_packages)
36+
--%aftertest(drop_test_csl_packages)
37+
procedure pass_varchar2_name;
38+
39+
--%test( Pass coma separated list of suite names )
40+
--%beforetest(create_test_csl_packages)
41+
--%aftertest(drop_test_csl_packages)
42+
procedure pass_varchar2_suite_csl;
43+
44+
--%test( Pass coma separated list of test names )
45+
--%beforetest(create_test_csl_packages)
46+
--%aftertest(drop_test_csl_packages)
47+
procedure pass_varchar2_test_csl;
2548

2649
end;
2750
/

0 commit comments

Comments
 (0)