@@ -945,6 +945,26 @@ end;]';
945945 ut.expect(sqlerrm).to_be_like('%failing_non_existing%');
946946 end;
947947
948+ procedure test_search_nonex_pck_wild is
949+ l_objects_to_run ut3_develop.ut_suite_items;
950+ begin
951+ l_objects_to_run := ut3_develop.ut_suite_manager.configure_execution_by_path(ut3_develop.ut_varchar2_list('ut3_develop.failing_non_*'));
952+ ut.fail('Non existing package did not raise exception');
953+ exception
954+ when others then
955+ ut.expect(sqlerrm).to_be_like('%failing_non_*%');
956+ end;
957+
958+ procedure test_search_nonex_path_wild is
959+ l_objects_to_run ut3_develop.ut_suite_items;
960+ begin
961+ l_objects_to_run := ut3_develop.ut_suite_manager.configure_execution_by_path(ut3_develop.ut_varchar2_list('ut3_develop:failing_non_*'));
962+ ut.fail('Non existing path did not raise exception');
963+ exception
964+ when others then
965+ ut.expect(sqlerrm).to_be_like('%:failing_non_*%');
966+ end;
967+
948968 procedure test_search_nonexist_sch_pck is
949969 l_objects_to_run ut3_develop.ut_suite_items;
950970 begin
@@ -1560,5 +1580,147 @@ end;]';
15601580
15611581 end;
15621582
1583+ procedure test_wild_card_obj_name is
1584+ c_path varchar2(100) := sys_context('USERENV', 'CURRENT_USER')||'.test_package_*';
1585+ l_objects_to_run ut3_develop.ut_suite_items;
1586+ l_test_suite ut3_develop.ut_logical_suite;
1587+ l_test1_suite ut3_develop.ut_logical_suite;
1588+ l_test2_suite ut3_develop.ut_logical_suite;
1589+ l_ctx_suite ut3_develop.ut_logical_suite;
1590+ l_test_proc ut3_develop.ut_test;
1591+ begin
1592+ --Act
1593+ l_objects_to_run := ut3_develop.ut_suite_manager.configure_execution_by_path(ut3_develop.ut_varchar2_list(c_path));
1594+
1595+ --Assert
1596+ ut.expect(l_objects_to_run.count).to_equal(3);
1597+
1598+
1599+ for i in 1 .. 3 loop
1600+ l_test_suite := treat(l_objects_to_run(i) as ut3_develop.ut_logical_suite);
1601+ ut.expect(l_test_suite.name in ('test_package_with_ctx','tests', 'tests2')).to_be_true;
1602+
1603+ case l_test_suite.name
1604+ when 'test_package_with_ctx' then
1605+ ut.expect(l_test_suite.items.count).to_equal(1);
1606+ l_ctx_suite:= treat(l_test_suite.items(1) as ut3_develop.ut_logical_suite);
1607+ ut.expect(l_ctx_suite.name).to_equal('some_context');
1608+ ut.expect(l_ctx_suite.description).to_equal('Some context description');
1609+ ut.expect(l_ctx_suite.items.count).to_equal(1);
1610+ l_test_proc := treat(l_ctx_suite.items(1) as ut3_develop.ut_test);
1611+ ut.expect(l_test_proc.name).to_equal('test1');
1612+ when 'tests' then
1613+ l_test1_suite := treat(l_test_suite.items(1) as ut3_develop.ut_logical_suite);
1614+ ut.expect(l_test1_suite.name).to_equal('test_package_1');
1615+ ut.expect(l_test1_suite.items.count).to_equal(3);
1616+ ut.expect(l_test1_suite.rollback_type).to_equal(ut3_develop.ut_utils.gc_rollback_manual);
1617+ l_test2_suite := treat(l_test1_suite.items(1) as ut3_develop.ut_logical_suite);
1618+
1619+ ut.expect(l_test2_suite.name).to_equal('test_package_2');
1620+ ut.expect(l_test2_suite.items.count).to_equal(3);
1621+ ut.expect(l_test2_suite.rollback_type).to_equal(ut3_develop.ut_utils.gc_rollback_manual);
1622+ when 'tests2' then
1623+ l_test1_suite := treat(l_test_suite.items(1) as ut3_develop.ut_logical_suite);
1624+ ut.expect(l_test1_suite.name).to_equal('test_package_3');
1625+ ut.expect(l_test1_suite.items.count).to_equal(3);
1626+ end case;
1627+
1628+ end loop;
1629+
1630+ end;
1631+
1632+ procedure test_wild_card_prc_name is
1633+ c_path varchar2(100) := sys_context('USERENV', 'CURRENT_USER')||'.test_package_1.test*';
1634+ l_objects_to_run ut3_develop.ut_suite_items;
1635+ l_test_suite ut3_develop.ut_logical_suite;
1636+ l_test1_suite ut3_develop.ut_logical_suite;
1637+ l_test1_proc ut3_develop.ut_test;
1638+ l_test2_proc ut3_develop.ut_test;
1639+ begin
1640+ --Act
1641+ l_objects_to_run := ut3_develop.ut_suite_manager.configure_execution_by_path(ut3_develop.ut_varchar2_list(c_path));
1642+
1643+ --Assert
1644+ ut.expect(l_objects_to_run.count).to_equal(1);
1645+ l_test_suite := treat(l_objects_to_run(1) as ut3_develop.ut_logical_suite);
1646+ ut.expect(l_test_suite.name).to_equal('tests');
1647+
1648+ l_test1_suite := treat(l_test_suite.items(1) as ut3_develop.ut_logical_suite);
1649+ ut.expect(l_test1_suite.name).to_equal('test_package_1');
1650+ ut.expect(l_test1_suite.items.count).to_equal(2);
1651+
1652+ l_test1_proc := treat(l_test1_suite.items(1) as ut3_develop.ut_test);
1653+ ut.expect(l_test1_proc.name).to_equal('test1');
1654+
1655+ l_test2_proc := treat(l_test1_suite.items(2) as ut3_develop.ut_test);
1656+ ut.expect(l_test2_proc.name).to_equal('test2');
1657+ end;
1658+
1659+ procedure test_wild_card_path_name is
1660+ c_path varchar2(100) := sys_context('USERENV', 'CURRENT_USER')||':tests*';
1661+ l_objects_to_run ut3_develop.ut_suite_items;
1662+ l_test_suite ut3_develop.ut_logical_suite;
1663+ l_test1_suite ut3_develop.ut_logical_suite;
1664+ l_test2_suite ut3_develop.ut_logical_suite;
1665+ l_test3_suite ut3_develop.ut_logical_suite;
1666+ l_ctx_suite ut3_develop.ut_logical_suite;
1667+ l_test_proc ut3_develop.ut_test;
1668+ begin
1669+ --Act
1670+ l_objects_to_run := ut3_develop.ut_suite_manager.configure_execution_by_path(ut3_develop.ut_varchar2_list(c_path));
1671+
1672+ --Assert
1673+ ut.expect(l_objects_to_run.count).to_equal(2);
1674+
1675+
1676+ for i in 1 .. 2 loop
1677+ l_test_suite := treat(l_objects_to_run(i) as ut3_develop.ut_logical_suite);
1678+ ut.expect(l_test_suite.name in ('tests', 'tests2')).to_be_true;
1679+
1680+ case l_test_suite.name
1681+ when 'tests' then
1682+ l_test1_suite := treat(l_test_suite.items(1) as ut3_develop.ut_logical_suite);
1683+ ut.expect(l_test1_suite.name).to_equal('test_package_1');
1684+ ut.expect(l_test1_suite.items.count).to_equal(3);
1685+
1686+ for i in 1 ..3 loop
1687+ --l_test2_suite := treat(l_test1_suite.items(i) as ut3_develop.ut_logical_suite);
1688+ --ut.expect(l_test2_suite.name).to_equal('test_package_2');
1689+ --ut.expect(l_test2_suite.items.count).to_equal(3);
1690+ case l_test1_suite.items(i).self_type
1691+ when 'UT_SUITE' then
1692+ l_test2_suite := treat(l_test1_suite.items(i) as ut3_develop.ut_logical_suite);
1693+ ut.expect(l_test2_suite.name).to_equal('test_package_2');
1694+ ut.expect(l_test2_suite.items.count).to_equal(3);
1695+
1696+ l_test_proc := treat(l_test2_suite.items(1) as ut3_develop.ut_test);
1697+ ut.expect(l_test_proc.name in ('test1', 'test2','context_test')).to_be_true;
1698+
1699+ l_test_proc := treat(l_test2_suite.items(2) as ut3_develop.ut_test);
1700+ ut.expect(l_test_proc.name in ('test1', 'test2','context_test')).to_be_true;
1701+
1702+ l_test_proc := treat(l_test2_suite.items(3) as ut3_develop.ut_test);
1703+ ut.expect(l_test_proc.name in ('test1', 'test2','context_test')).to_be_true;
1704+
1705+ when 'UT_TEST' then
1706+ l_test_proc := treat(l_test1_suite.items(i) as ut3_develop.ut_test);
1707+ ut.expect(l_test_proc.name in ('test1', 'test2')).to_be_true;
1708+ end case;
1709+ end loop;
1710+ when 'tests2' then
1711+ ut.expect(l_test_suite.items.count).to_equal(1);
1712+ l_test1_suite := treat(l_test_suite.items(1) as ut3_develop.ut_logical_suite);
1713+ ut.expect(l_test1_suite.name).to_equal('test_package_3');
1714+ ut.expect(l_test1_suite.items.count).to_equal(3);
1715+ for i in 1 .. 3 loop
1716+ l_test_proc := treat(l_test1_suite.items(i) as ut3_develop.ut_test);
1717+ ut.expect(l_test_proc.name in ('test1', 'test2','disabled_test')).to_be_true;
1718+ end loop;
1719+ end case;
1720+
1721+ end loop;
1722+
1723+ end;
1724+
15631725end test_suite_manager;
15641726/
0 commit comments