Skip to content

Commit d0d019c

Browse files
committed
Reworked and added more tests for a_object_name parameter.
Added tests for a_test_procedure parameter.
1 parent 9a514bf commit d0d019c

4 files changed

Lines changed: 135 additions & 19 deletions

File tree

examples/RunAllExamples.sql

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,5 @@ set feedback off
66
@@RunExampleTestSuiteWithCustomDBMSOutputReporter.sql
77
@@RunExampleTestSuiteWithDBMSOutputReporter.sql
88
@@RunExampleTestThroughBaseClass.sql
9+
@@TestPackageName.sql
10+
@@TestProcedureName.sql

examples/TestNoPackageName.sql

Lines changed: 0 additions & 19 deletions
This file was deleted.

examples/TestPackageName.sql

Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
--Clear Screen
2+
Set Serveroutput On Size Unlimited format truncated
3+
set echo off
4+
5+
--Arrange
6+
PROMPT Reports error when unit test package name for a test is null
7+
declare
8+
simple_test ut_test;
9+
begin
10+
11+
--Act
12+
simple_test := ut_test(a_object_name => null, a_test_procedure => 'ut_exampletest');
13+
14+
simple_test.execute();
15+
16+
--Assert
17+
if simple_test.execution_result.result = ut_utils.tr_error then
18+
dbms_output.put_line(' Success');
19+
else
20+
dbms_output.put_line(' Failure');
21+
end if;
22+
end;
23+
/
24+
25+
--Arrange
26+
PROMPT Reports error when unit test package name for a test is invalid
27+
declare
28+
simple_test ut_test;
29+
begin
30+
31+
--Act
32+
simple_test := ut_test(a_object_name => 'invalid test package name', a_test_procedure => 'ut_exampletest');
33+
34+
simple_test.execute();
35+
36+
--Assert
37+
if simple_test.execution_result.result = ut_utils.tr_error then
38+
dbms_output.put_line(' Success');
39+
else
40+
dbms_output.put_line(' Failure');
41+
end if;
42+
end;
43+
/
44+
45+
--Arrange
46+
PROMPT Reports error when unit test package for a test is in invalid state
47+
begin
48+
execute immediate
49+
'create or replace package invalid_package is
50+
v_variable non_existing_type;
51+
procedure ut_exampletest;
52+
end;';
53+
exception when others then
54+
if sqlcode = - 24344 then
55+
dbms_output.put_line(' Invalid package created');
56+
else
57+
raise;
58+
end if;
59+
end;
60+
/
61+
62+
declare
63+
simple_test ut_test;
64+
begin
65+
66+
--Act
67+
simple_test := ut_test(a_object_name => 'invalid_package', a_test_procedure => 'ut_exampletest');
68+
69+
simple_test.execute();
70+
71+
--Assert
72+
if simple_test.execution_result.result = ut_utils.tr_error then
73+
dbms_output.put_line(' Success');
74+
else
75+
dbms_output.put_line(' Failure');
76+
end if;
77+
end;
78+
/
79+
80+
--Cleanup
81+
drop package invalid_package;

examples/TestProcedureName.sql

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
--This shows how the interna test engine works to test a single package.
2+
--No tables are used for this and exceptions are handled better.
3+
--Clear Screen
4+
Set Serveroutput On Size Unlimited format truncated
5+
set echo off
6+
7+
--Arrange
8+
@@ut_exampletest.pks
9+
@@ut_exampletest.pkb
10+
11+
PROMPT Reports error when test procedure name for a test is null
12+
declare
13+
simple_test ut_test;
14+
begin
15+
16+
--Act
17+
simple_test := ut_test(a_object_name => 'ut_exampletest'
18+
,a_test_procedure => null);
19+
20+
simple_test.execute();
21+
22+
--Assert
23+
if simple_test.execution_result.result = ut_utils.tr_error then
24+
dbms_output.put_line(' Success');
25+
else
26+
dbms_output.put_line(' Failure');
27+
end if;
28+
end;
29+
/
30+
31+
PROMPT Reports error when test procedure name for a test is invalid
32+
declare
33+
simple_test ut_test;
34+
begin
35+
36+
--Act
37+
simple_test := ut_test(a_object_name => 'ut_exampletest'
38+
,a_test_procedure => 'invalid procedure name');
39+
40+
simple_test.execute();
41+
42+
--Assert
43+
if simple_test.execution_result.result = ut_utils.tr_error then
44+
dbms_output.put_line(' Success');
45+
else
46+
dbms_output.put_line(' Failure');
47+
end if;
48+
end;
49+
/
50+
51+
--Cleanup
52+
drop package ut_exampletest;

0 commit comments

Comments
 (0)