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

Skip to content

Commit 8e9769d

Browse files
committed
Renamed to_be_equal to to_equal.
Added tests for number `to_equal` assertion. Added tests for `nulls_are_equal` function. Added additional tests for varchar to_equal assertion.
1 parent e6572da commit 8e9769d

45 files changed

Lines changed: 275 additions & 169 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

examples/demo_expectations.pck

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -60,27 +60,27 @@ create or replace package body demo_expectations is
6060
-- %test(success of equal varchar)
6161
procedure test1 is
6262
begin
63-
ut.expect( 'a varchar2 value' ).to_be_equal('a varchar2 value');
63+
ut.expect( 'a varchar2 value' ).to_equal('a varchar2 value');
6464
end;
6565

6666
-- %test(failure of different varchar)
6767
procedure test2 is
6868
begin
69-
ut.expect('a varchar2 value').to_be_equal('a differernt varchar2 value');
69+
ut.expect('a varchar2 value').to_equal('a differernt varchar2 value');
7070
end;
7171

7272

7373
-- %test(success of equal number)
7474
procedure test3 is
7575
begin
76-
ut.expect(12345).to_be_equal(12345);
76+
ut.expect(12345).to_equal(12345);
7777
end;
7878

7979

8080
-- %test(failure of different number)
8181
procedure test4 is
8282
begin
83-
ut.expect(.0987654321).to_be_equal(.09876543210987654321);
83+
ut.expect(.0987654321).to_equal(.09876543210987654321);
8484
end;
8585

8686

@@ -89,89 +89,89 @@ create or replace package body demo_expectations is
8989
a clob := 'a3';
9090
b clob := 'a3';
9191
begin
92-
ut.expect(a).to_be_equal(b);
92+
ut.expect(a).to_equal(b);
9393
end;
9494

9595
-- %test(failure of different clob)
9696
procedure test6 is
9797
a clob := 'a3';
9898
b clob := 'a4';
9999
begin
100-
ut.expect(a).to_be_equal(b);
100+
ut.expect(a).to_equal(b);
101101
end;
102102

103103
-- %test(failure varchar with clob)
104104
procedure test7 is
105105
a clob := 'a3';
106106
begin
107-
ut.expect(a).to_be_equal('a3');
107+
ut.expect(a).to_equal('a3');
108108
end;
109109

110110

111111
-- %test(failure of clob with varchar)
112112
procedure test8 is
113113
a clob := 'a3';
114114
begin
115-
ut.expect('a3').to_be_equal(a);
115+
ut.expect('a3').to_equal(a);
116116
end;
117117

118118
-- %test(failure varchar with number)
119119
procedure test9 is
120120
begin
121-
ut.expect('12345').to_be_equal(12345);
121+
ut.expect('12345').to_equal(12345);
122122
end;
123123

124124
-- %test(failure of number with varchar)
125125
procedure test10 is
126126
begin
127-
ut.expect(12345).to_be_equal('12345');
127+
ut.expect(12345).to_equal('12345');
128128
end;
129129

130130
-- %test(failure number with clob)
131131
procedure test11 is
132132
a clob := '3';
133133
begin
134-
ut.expect(a).to_be_equal(3);
134+
ut.expect(a).to_equal(3);
135135
end;
136136

137137

138138
-- %test(failure of clob with number)
139139
procedure test12 is
140140
a clob := '3';
141141
begin
142-
ut.expect(3).to_be_equal(a);
142+
ut.expect(3).to_equal(a);
143143
end;
144144

145145
-- %test(success of equal blob)
146146
procedure test13 is
147147
a blob := utl_raw.cast_to_raw('a3');
148148
b blob := utl_raw.cast_to_raw('a3');
149149
begin
150-
ut.expect(a).to_be_equal(b);
150+
ut.expect(a).to_equal(b);
151151
end;
152152

153153
-- %test(failure of different blob)
154154
procedure test14 is
155155
a blob := utl_raw.cast_to_raw('a3');
156156
b blob := utl_raw.cast_to_raw('a4');
157157
begin
158-
ut.expect(a).to_be_equal(b);
158+
ut.expect(a).to_equal(b);
159159
end;
160160

161161
-- %test(failure of clob with blob)
162162
procedure test15 is
163163
a clob := 'a3';
164164
b blob := utl_raw.cast_to_raw('a3');
165165
begin
166-
ut.expect(a).to_be_equal(b);
166+
ut.expect(a).to_equal(b);
167167
end;
168168

169169
-- %test(failure of blob with clob)
170170
procedure test16 is
171171
a blob := utl_raw.cast_to_raw('a3');
172172
b clob := 'a3';
173173
begin
174-
ut.expect(a).to_be_equal(b);
174+
ut.expect(a).to_equal(b);
175175
end;
176176

177177

source/assertions/ut_assert_processor.pkb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ create or replace package body ut_assert_processor as
22

33
g_asserts_called ut_assert_list := ut_assert_list();
44

5-
g_nulls_are_equal boolean_not_null := true;
5+
g_nulls_are_equal boolean_not_null := gc_default_nulls_are_equal;
66

77
function nulls_are_equal return boolean is
88
begin

source/assertions/ut_assert_processor.pks

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
create or replace package ut_assert_processor authid current_user as
22

3+
gc_default_nulls_are_equal constant boolean := true;
4+
35
subtype boolean_not_null is boolean not null;
46

57
function nulls_are_equal return boolean;

source/assertions/ut_assertion.tpb

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -11,35 +11,39 @@ create or replace type body ut_assertion as
1111
);
1212
end;
1313

14-
member procedure to_be_equal(self in ut_assertion, a_expected varchar2) is
14+
member procedure to_equal(self in ut_assertion, a_expected varchar2, a_nulls_are_equal boolean := null) is
1515
begin
16-
ut_utils.debug_log('ut_assertion.to_be_equal(self in ut_assertion, a_expected varchar2)');
17-
self.build_assert_result( false, 'to be equal', ut_utils.to_string(a_expected), 'varchar2');
16+
ut_utils.debug_log('ut_assertion.to_equal(self in ut_assertion, a_expected varchar2, a_nulls_are_equal boolean := null)');
17+
self.build_assert_result( false, 'to equal', ut_utils.to_string(a_expected), 'varchar2');
1818
end;
1919

20-
member procedure to_be_equal(self in ut_assertion, a_expected number) is
20+
member procedure to_equal(self in ut_assertion, a_expected number, a_nulls_are_equal boolean := null) is
2121
begin
22-
ut_utils.debug_log('ut_assertion.to_be_equal(self in ut_assertion, a_expected number)');
23-
self.build_assert_result( false, 'to be equal', ut_utils.to_string(a_expected), 'number');
22+
ut_utils.debug_log('ut_assertion.to_equal(self in ut_assertion, a_expected number, a_nulls_are_equal boolean := null)');
23+
self.build_assert_result( false, 'to equal', ut_utils.to_string(a_expected), 'number');
2424
end;
2525

26-
member procedure to_be_equal(self in ut_assertion, a_expected clob) is
26+
member procedure to_equal(self in ut_assertion, a_expected clob, a_nulls_are_equal boolean := null) is
2727
begin
28-
self.build_assert_result( false, 'to be equal', ut_utils.to_string(a_expected), 'clob');
28+
ut_utils.debug_log('ut_assertion.to_equal(self in ut_assertion, a_expected clob, a_nulls_are_equal boolean := null)');
29+
self.build_assert_result( false, 'to equal', ut_utils.to_string(a_expected), 'clob');
2930
end;
3031

31-
member procedure to_be_equal(self in ut_assertion, a_expected blob) is
32+
member procedure to_equal(self in ut_assertion, a_expected blob, a_nulls_are_equal boolean := null) is
3233
begin
33-
self.build_assert_result( false, 'to be equal', ut_utils.to_string(a_expected), 'blob');
34+
ut_utils.debug_log('ut_assertion.to_equal(self in ut_assertion, a_expected blob, a_nulls_are_equal boolean := null)');
35+
self.build_assert_result( false, 'to equal', ut_utils.to_string(a_expected), 'blob');
3436
end;
3537

3638
final member procedure to_be_null is
3739
begin
40+
ut_utils.debug_log('ut_assertion.to_be_null');
3841
self.build_assert_result(ut_utils.int_to_boolean(self.is_null), 'to_be_null', null, ut_utils.to_string(to_char(null)));
3942
end;
4043

4144
final member procedure to_be_not_null is
4245
begin
46+
ut_utils.debug_log('ut_assertion.to_be_not_null');
4347
self.build_assert_result(not ut_utils.int_to_boolean(self.is_null), 'to_be_not_null', null, ut_utils.to_string(to_char(null)));
4448
end;
4549

source/assertions/ut_assertion.tps

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@ create or replace type ut_assertion as object
66
message varchar2(4000 char),
77
final member procedure build_assert_result( self in ut_assertion, a_assert_result boolean, a_assert_name varchar2,
88
a_expected_value_string in varchar2, a_expected_data_type varchar2 := null),
9-
member procedure to_be_equal(self in ut_assertion, a_expected varchar2),
10-
member procedure to_be_equal(self in ut_assertion, a_expected number),
11-
member procedure to_be_equal(self in ut_assertion, a_expected clob),
12-
member procedure to_be_equal(self in ut_assertion, a_expected blob),
9+
member procedure to_equal(self in ut_assertion, a_expected varchar2, a_nulls_are_equal boolean := null),
10+
member procedure to_equal(self in ut_assertion, a_expected number, a_nulls_are_equal boolean := null),
11+
member procedure to_equal(self in ut_assertion, a_expected clob, a_nulls_are_equal boolean := null),
12+
member procedure to_equal(self in ut_assertion, a_expected blob, a_nulls_are_equal boolean := null),
1313
final member procedure to_be_null,
1414
final member procedure to_be_not_null
1515
)

source/assertions/ut_assertion_blob.tpb

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,13 @@ create or replace type body ut_assertion_blob as
1010
return;
1111
end;
1212

13-
overriding member procedure to_be_equal(self in ut_assertion_blob, a_expected blob) is
13+
overriding member procedure to_equal(self in ut_assertion_blob, a_expected blob, a_nulls_are_equal boolean := null) is
1414
begin
15-
ut_utils.debug_log('ut_assertion_blob.to_be_equal(self in ut_assertion, a_expected blob)');
16-
self.build_assert_result( (dbms_lob.compare( a_expected, self.actual ) = 0), 'to be equal', ut_utils.to_string(a_expected));
15+
ut_utils.debug_log('ut_assertion_blob.to_equal(self in ut_assertion, a_expected blob)');
16+
self.build_assert_result(
17+
( (a_expected is null and self.actual is null and coalesce(a_nulls_are_equal, ut_assert_processor.nulls_are_equal()))
18+
or (dbms_lob.compare( a_expected, self.actual ) = 0)), 'to equal', ut_utils.to_string(a_expected)
19+
);
1720
end;
1821

1922
end;

source/assertions/ut_assertion_blob.tps

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@ create or replace type ut_assertion_blob under ut_assertion
22
(
33
actual blob,
44
constructor function ut_assertion_blob(self in out nocopy ut_assertion_blob, a_actual blob, a_message varchar2 default null) return self as result,
5-
overriding member procedure to_be_equal(self in ut_assertion_blob, a_expected blob)
5+
overriding member procedure to_equal(self in ut_assertion_blob, a_expected blob, a_nulls_are_equal boolean := null)
66
)
77
/

source/assertions/ut_assertion_clob.tpb

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,13 @@ create or replace type body ut_assertion_clob as
1010
return;
1111
end;
1212

13-
overriding member procedure to_be_equal(self in ut_assertion_clob, a_expected clob) is
13+
overriding member procedure to_equal(self in ut_assertion_clob, a_expected clob, a_nulls_are_equal boolean := null) is
1414
begin
15-
ut_utils.debug_log('ut_assertion_clob.to_be_equal(self in ut_assertion, a_expected clob)');
16-
self.build_assert_result( (a_expected = self.actual), 'to be equal', ut_utils.to_string(a_expected));
15+
ut_utils.debug_log('ut_assertion_clob.to_equal(self in ut_assertion, a_expected clob)');
16+
self.build_assert_result(
17+
( (a_expected is null and self.actual is null and coalesce(a_nulls_are_equal, ut_assert_processor.nulls_are_equal()))
18+
or (a_expected = self.actual)), 'to equal', ut_utils.to_string(a_expected)
19+
);
1720
end;
1821

1922
member procedure to_be_like(self in ut_assertion_clob, a_mask in varchar2, a_escape_char in varchar2 := null) is

source/assertions/ut_assertion_clob.tps

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ create or replace type ut_assertion_clob under ut_assertion
22
(
33
actual clob,
44
constructor function ut_assertion_clob(self in out nocopy ut_assertion_clob, a_actual clob, a_message varchar2 default null) return self as result,
5-
overriding member procedure to_be_equal(self in ut_assertion_clob, a_expected clob),
5+
overriding member procedure to_equal(self in ut_assertion_clob, a_expected clob, a_nulls_are_equal boolean := null),
66
member procedure to_be_like(self in ut_assertion_clob, a_mask in varchar2, a_escape_char in varchar2 := null),
77
member procedure to_be_matching(self in ut_assertion_clob, a_pattern in varchar2, a_modifier in varchar2 := null)
88
)

source/assertions/ut_assertion_number.tpb

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,13 @@ create or replace type body ut_assertion_number as
1010
return;
1111
end;
1212

13-
overriding member procedure to_be_equal(self in ut_assertion_number, a_expected number) is
13+
overriding member procedure to_equal(self in ut_assertion_number, a_expected number, a_nulls_are_equal boolean := null) is
1414
begin
15-
ut_utils.debug_log('ut_assertion_number.to_be_equal(self in ut_assertion, a_expected number)');
16-
self.build_assert_result( (a_expected = self.actual), 'to be equal', ut_utils.to_string(a_expected));
15+
ut_utils.debug_log('ut_assertion_number.to_equal(self in ut_assertion, a_expected number, a_nulls_are_equal boolean := null)');
16+
self.build_assert_result(
17+
( (a_expected is null and self.actual is null and coalesce(a_nulls_are_equal, ut_assert_processor.nulls_are_equal()))
18+
or (a_expected = self.actual)) , 'to equal', ut_utils.to_string(a_expected)
19+
);
1720
end;
1821

1922
end;

0 commit comments

Comments
 (0)