@@ -17,21 +17,6 @@ create or replace package body test_expectations_cursor is
1717 execute immediate 'drop table gtt_test_table';
1818 end;
1919
20- /** Just returns a pre-made expected object
21- */
22- function get_expected_obj return t_test_table
23- as
24- l_expected_obj t_test_table;
25- begin
26-
27- l_expected_obj(1).my_num := 1;
28- l_expected_obj(1).my_string := 'This is my test string';
29- l_expected_obj(1).my_clob := 'This is an even longer test clob';
30- l_expected_obj(1).my_date := to_date('1984-09-05', 'YYYY-MM-DD');
31-
32- return l_expected_obj;
33- end;
34-
3520 procedure test_cursor_w_temp_table
3621 as
3722 pragma autonomous_transaction;
@@ -60,18 +45,24 @@ create or replace package body test_expectations_cursor is
6045
6146 procedure test_cursor_success
6247 as
63- l_expected_obj t_test_table;
64- l_actual_obj t_test_table;
6548 l_expected sys_refcursor;
6649 l_actual sys_refcursor;
6750 begin
6851
6952 -- Arrange
70- l_expected_obj := get_expected_obj();
71- l_actual_obj := get_expected_obj();
72-
73- open l_expected for select * from table(l_expected_obj);
74- open l_actual for select * from table(l_actual_obj);
53+ open l_expected for
54+ select 1 as my_num,
55+ 'This is my test string' as my_string,
56+ to_clob('This is an even longer test clob') as my_clob,
57+ to_date('1984-09-05', 'YYYY-MM-DD') as my_date
58+ from dual;
59+
60+ open l_actual for
61+ select 1 as my_num,
62+ 'This is my test string' as my_string,
63+ to_clob('This is an even longer test clob') as my_clob,
64+ to_date('1984-09-05', 'YYYY-MM-DD') as my_date
65+ from dual;
7566
7667 --Act - execute the expectation on cursor opened on GTT
7768 ut3.ut.expect( l_actual ).to_equal( l_expected );
@@ -84,18 +75,15 @@ create or replace package body test_expectations_cursor is
8475
8576 end;
8677
87- --%test(Test cursor comparison success when both empty)
8878 procedure test_cursor_success_on_empty
8979 as
90- l_expected_obj t_test_table;
91- l_actual_obj t_test_table;
9280 l_expected sys_refcursor;
9381 l_actual sys_refcursor;
9482 begin
9583
9684 -- Arrange
97- open l_expected for select * from table(l_expected_obj) ;
98- open l_actual for select * from table(l_actual_obj) ;
85+ open l_expected for select * from dual where 1=0 ;
86+ open l_actual for select * from dual where 1=0 ;
9987
10088 --Act - execute the expectation on cursor opened on GTT
10189 ut3.ut.expect( l_actual ).to_equal( l_expected );
@@ -111,20 +99,14 @@ create or replace package body test_expectations_cursor is
11199 --%test(Test cursor comparison fails on different content)
112100 procedure test_cursor_fail_on_difference
113101 as
114- l_expected_obj t_test_table;
115- l_actual_obj t_test_table;
116102 l_expected sys_refcursor;
117103 l_actual sys_refcursor;
118104 begin
119105
120106 -- Arrange
121- l_expected_obj := get_expected_obj();
122- l_actual_obj := get_expected_obj();
123- l_actual_obj(1).my_clob := 'Another totally different story';
107+ open l_expected for select to_clob('This is an even longer test clob') as my_clob from dual;
108+ open l_actual for select to_clob('Another totally different story') as my_clob from dual;
124109
125- open l_expected for select * from table(l_expected_obj);
126- open l_actual for select * from table(l_actual_obj);
127-
128110 --Act - execute the expectation on cursor opened on GTT
129111 ut3.ut.expect( l_actual ).to_equal( l_expected );
130112
@@ -136,22 +118,16 @@ create or replace package body test_expectations_cursor is
136118
137119 end;
138120
139- procedure test_cursor_fail_on_expected_missing
121+ procedure fail_on_expected_missing
140122 as
141- l_expected_obj t_test_table;
142- l_actual_obj t_test_table;
143123 l_expected sys_refcursor;
144124 l_actual sys_refcursor;
145125 begin
146126
147127 -- Arrange
148- l_expected_obj := get_expected_obj();
149- l_actual_obj := get_expected_obj();
150- l_actual_obj(2).my_num := 2;
128+ open l_expected for select 1 as my_num from dual;
129+ open l_actual for select 1 as my_num from dual union all select 1 as my_num from dual;
151130
152- open l_expected for select * from table(l_expected_obj);
153- open l_actual for select * from table(l_actual_obj);
154-
155131 --Act - execute the expectation on cursor opened on GTT
156132 ut3.ut.expect( l_actual ).to_equal( l_expected );
157133
@@ -163,22 +139,16 @@ create or replace package body test_expectations_cursor is
163139
164140 end;
165141
166- procedure test_cursor_fail_on_actual_missing
142+ procedure fail_on_actual_missing
167143 as
168- l_expected_obj t_test_table;
169- l_actual_obj t_test_table;
170144 l_expected sys_refcursor;
171145 l_actual sys_refcursor;
172146 begin
173147
174148 -- Arrange
175- l_expected_obj := get_expected_obj();
176- l_expected_obj(2).my_num := 2;
177- l_actual_obj := get_expected_obj();
149+ open l_expected for select 1 as my_num from dual union all select 1 as my_num from dual;
150+ open l_actual for select 1 as my_num from dual;
178151
179- open l_expected for select * from table(l_expected_obj);
180- open l_actual for select * from table(l_actual_obj);
181-
182152 --Act - execute the expectation on cursor opened on GTT
183153 ut3.ut.expect( l_actual ).to_equal( l_expected );
184154
0 commit comments