@@ -34,7 +34,8 @@ TestTArrayUtils = class(TTestCase)
34
34
end ;
35
35
36
36
TestArraysCatSnippets = class (TTestCase)
37
-
37
+ published
38
+ procedure TestByteArraysEqual ;
38
39
end ;
39
40
40
41
implementation
@@ -198,6 +199,40 @@ procedure TestTArrayUtils.TestSameStart;
198
199
);
199
200
end ;
200
201
202
+ { TestArraysCatSnippets }
203
+
204
+ procedure TestArraysCatSnippets.TestByteArraysEqual ;
205
+ var
206
+ A0L, A0R: TBytes;
207
+ A1L, A1Req, A1Rneq: TBytes;
208
+ ANL, ANReq, ANRneq1, ANRneq2, ANRneq3, ANRneq4: TBytes;
209
+ AMR: TBytes;
210
+ begin
211
+ SetLength(A0L, 0 );
212
+ SetLength(A0R, 0 );
213
+ A1L := TBytes.Create(42 );
214
+ A1Req := TBytes.Create(42 );
215
+ A1Rneq := TBytes.Create(56 );
216
+ ANL := TBytes.Create(27 ,98 ,128 ,46 ,35 ,0 ,1 );
217
+ ANReq := TBytes.Create(27 ,98 ,128 ,46 ,35 ,0 ,1 );
218
+ ANRneq1 := TBytes.Create(27 ,98 ,128 ,46 ,35 ,0 ,7 );
219
+ ANRneq2 := TBytes.Create(26 ,98 ,128 ,46 ,35 ,0 ,1 );
220
+ ANRneq3 := TBytes.Create(27 ,98 ,67 ,46 ,35 ,0 ,1 );
221
+ ANRneq4 := TBytes.Create(27 ,17 ,67 ,46 ,35 ,12 ,1 );
222
+ AMR := TBytes.Create(27 ,98 ,128 ,35 ,0 ,1 );
223
+
224
+ CheckTrue(ByteArraysEqual(A0L, A0R), ' #1' );
225
+ CheckTrue(ByteArraysEqual(A1L, A1Req), ' #2' );
226
+ CheckFalse(ByteArraysEqual(A1L, A1Rneq), ' #3' );
227
+ CheckTrue(ByteArraysEqual(ANL, ANReq), ' #4' );
228
+ CheckFalse(ByteArraysEqual(A1L, ANRneq1), ' #5' );
229
+ CheckFalse(ByteArraysEqual(A1L, ANRneq2), ' #6' );
230
+ CheckFalse(ByteArraysEqual(A1L, ANRneq3), ' #7' );
231
+ CheckFalse(ByteArraysEqual(A1L, ANRneq4), ' #8' );
232
+ CheckFalse(ByteArraysEqual(A1L, AMR), ' #9' );
233
+ CheckFalse(ByteArraysEqual(A0L, A1L), ' #10' );
234
+ end ;
235
+
201
236
initialization
202
237
203
238
IntegerCompareFn := function (const Left, Right: Integer): Boolean
0 commit comments