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

Skip to content

Commit 52548d0

Browse files
committed
Added cleanup of assert results after each tests.
Added tests for assertions on numbers and some tests for anydata.
1 parent 1a71932 commit 52548d0

11 files changed

Lines changed: 130 additions & 0 deletions

tests/RunAll.sql

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,16 @@ set serveroutput on size unlimited format truncated
2828
@@lib/RunTest.sql ut_utils/ut_utils.test_result_to_char.Success.sql
2929

3030
@@lib/RunTest.sql ut_metadata/ut_metadata.form_name.TrimStandaloneProgramName.sql
31+
32+
@@lib/RunTest.sql ut_assert/ut_assert.are_equal.number.GivesSuccessForEqualValues.sql
33+
@@lib/RunTest.sql ut_assert/ut_assert.are_equal.number.GivesFailureForDifferentValues.sql
34+
@@lib/RunTest.sql ut_assert/ut_assert.are_equal.number.GivesFailureWhenActualIsNull.sql
35+
@@lib/RunTest.sql ut_assert/ut_assert.are_equal.number.GivesFailureWhenBothAreNull.sql
36+
@@lib/RunTest.sql ut_assert/ut_assert.are_equal.number.GivesFailureWhenExpectedIsNull.sql
37+
38+
@@lib/RunTest.sql ut_assert/ut_assert.are_equal.anydata.GivesSuccessWhenComparingTheSameData.sql
39+
@@lib/RunTest.sql ut_assert/ut_assert.are_equal.anydata.GivesFailureWhenComparingDifferentData.sql
40+
@@lib/RunTest.sql ut_assert/ut_assert.are_equal.anydata.PutsObjectStrucureIntoMessage.sql
3141
--Global cleanup
3242
drop package ut_example_tests;
3343

tests/lib/RunTest.sql

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,3 +19,8 @@ begin
1919
end case;
2020
end;
2121
/
22+
23+
begin
24+
ut_assert.clear_asserts;
25+
end;
26+
/
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
PROMPT Gives a success when comparing equal oracle objects
2+
--Arrange
3+
create or replace type department as object(
4+
dept_name varchar2(30)
5+
);
6+
/
7+
8+
declare
9+
l_expected department := department('HR');
10+
l_actual department := department('IT');
11+
l_result integer;
12+
begin
13+
--Act
14+
ut_assert.are_equal( anydata.convertObject(l_expected), anydata.convertObject(l_actual) );
15+
l_result := ut_assert.current_assert_test_result;
16+
--Assert
17+
if l_result = ut_utils.tr_failure then
18+
:test_result := ut_utils.tr_success;
19+
else
20+
dbms_output.put_line('expected: '''||ut_utils.tr_failure||''', got: '''||l_result||'''' );
21+
end if;
22+
end;
23+
/
24+
25+
--Cleanup
26+
drop type department;
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
PROMPT Gives a success when comparing equal oracle objects
2+
--Arrange
3+
create or replace type department as object(
4+
dept_name varchar2(30)
5+
);
6+
/
7+
8+
declare
9+
l_expected department := department('hr');
10+
l_actual department := department('hr');
11+
l_result integer;
12+
begin
13+
--Act
14+
ut_assert.are_equal( anydata.convertObject(l_expected), anydata.convertObject(l_actual) );
15+
l_result := ut_assert.current_assert_test_result;
16+
--Assert
17+
if l_result = ut_utils.tr_success then
18+
:test_result := ut_utils.tr_success;
19+
else
20+
dbms_output.put_line('expected: '''||ut_utils.tr_success||''', got: '''||l_result||'''' );
21+
end if;
22+
end;
23+
/
24+
25+
--Cleanup
26+
drop type department;
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
PROMPT Gives a success when comparing equal oracle objects
2+
--Arrange
3+
create or replace type department as object(
4+
dept_name varchar2(30)
5+
);
6+
/
7+
8+
declare
9+
l_expected department := department('HR');
10+
l_actual department := department('IT');
11+
l_result integer;
12+
assert_results ut_objects_list;
13+
assert_result ut_assert_result;
14+
begin
15+
--Act
16+
ut_assert.are_equal( anydata.convertObject(l_expected), anydata.convertObject(l_actual) );
17+
ut_assert.process_asserts(assert_results);
18+
assert_result := treat(assert_results(1) as ut_assert_result);
19+
--Assert
20+
if assert_result.message like q'[%department(%dept_name => 'HR'%)%]'
21+
and assert_result.message like q'[%department(%dept_name => 'IT'%)%]'
22+
then
23+
:test_result := ut_utils.tr_success;
24+
else
25+
dbms_output.put_line( 'assert_result.message does not contain the objects' );
26+
end if;
27+
end;
28+
/
29+
30+
--Cleanup
31+
drop type department;
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
PROMPT Gives a failure when comparing different number datatypes
2+
3+
@@ut_assert/ut_assert.are_equal.number.common '1' '2' 'ut_utils.tr_failure'
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
PROMPT Gives a failure when expected is non null number and actual is null
2+
3+
@@ut_assert/ut_assert.are_equal.number.common 'null' '1' 'ut_utils.tr_failure'
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
PROMPT Gives a failure when comparing null to null
2+
3+
@@ut_assert/ut_assert.are_equal.number.common 'null' 'null' 'ut_utils.tr_failure'
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
PROMPT Gives a failure when expected is non null number and actual is null
2+
3+
@@ut_assert/ut_assert.are_equal.number.common '1' 'null' 'ut_utils.tr_failure'
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
PROMPT Gives a success when comparing equal number datatypes
2+
3+
@@ut_assert/ut_assert.are_equal.number.common '1' '1' 'ut_utils.tr_success'

0 commit comments

Comments
 (0)