@@ -159,4 +159,202 @@ Rebol [
159
159
--assert all [error? e: try [0:0:0 < 1x1 ] e/id = 'invalid-compare]
160
160
===end-group===
161
161
162
+
163
+ ===start-group=== "block!"
164
+ ;@@ https://github.com/Oldes/Rebol-issues/issues/2501
165
+ ;@@ https://github.com/Oldes/Rebol-issues/issues/2594
166
+ --test-- "equal? block! with strings"
167
+ --assert equal? ["a" ] ["a" ]
168
+ --assert equal? ["a" ] ["A" ]
169
+ --test-- "equal? block! with words"
170
+ --assert equal? [a] [a]
171
+ --assert equal? [a] [a: ]
172
+ --assert equal? [a] [:a ]
173
+ --assert equal? [a] ['a]
174
+ --assert equal? [a] [/a ]
175
+ --test-- "equal? block! with numbers"
176
+ --assert equal? [1 ] [1 ]
177
+ --assert equal? [1 ] [1.0 ]
178
+ --assert equal? [1 ] [100 % ]
179
+ --assert equal? [1 ] [$1]
180
+ --assert equal? [1.0 ] [1.0 ]
181
+ --assert equal? [1.0 ] [1 ]
182
+ --assert equal? [1.0 ] [100 % ]
183
+ --assert equal? [1.0 ] [$1]
184
+ --assert equal? [1 % ] [1 % ]
185
+ --assert equal? [100 % ] [1 ]
186
+ --assert equal? [100 % ] [1.0 ]
187
+ --assert equal? [100 % ] [$1]
188
+ --assert equal? [$1] [$1]
189
+ --assert equal? [$1] [1 ]
190
+ --assert equal? [$1] [1.0 ]
191
+ --assert equal? [$1] [100 % ]
192
+ --test-- "equal? block! with blocks"
193
+ --assert equal? [[1 ]] [[1 ]]
194
+ --assert not equal? [[1 ]] [(1 )]
195
+
196
+
197
+ --test-- "strict-equal? block! with strings"
198
+ --assert strict-equal? ["a" ] ["a" ]
199
+ --assert not strict-equal? ["a" ] ["A" ]
200
+ --test-- "strict-equal? block! with words"
201
+ --assert strict-equal? [a] [a]
202
+ --assert not strict-equal? [a] [a: ]
203
+ --assert not strict-equal? [a] [:a ]
204
+ --assert not strict-equal? [a] ['a]
205
+ --assert not strict-equal? [a] [/a ]
206
+ --test-- "strict-equal? block! with numbers"
207
+ --assert strict-equal? [1 ] [1 ]
208
+ --assert not strict-equal? [1 ] [1.0 ]
209
+ --assert not strict-equal? [1 ] [100 % ]
210
+ --assert not strict-equal? [1 ] [$1]
211
+ --assert strict-equal? [1.0 ] [1.0 ]
212
+ --assert not strict-equal? [1.0 ] [1 ]
213
+ --assert not strict-equal? [1.0 ] [100 % ]
214
+ --assert not strict-equal? [1.0 ] [$1]
215
+ --assert strict-equal? [1 % ] [1 % ]
216
+ --assert not strict-equal? [100 % ] [1 ]
217
+ --assert not strict-equal? [100 % ] [1.0 ]
218
+ --assert not strict-equal? [100 % ] [$1]
219
+ --assert strict-equal? [$1] [$1]
220
+ --assert not strict-equal? [$1] [1 ]
221
+ --assert not strict-equal? [$1] [1.0 ]
222
+ --assert not strict-equal? [$1] [100 % ]
223
+ --test-- "strict-equal? block! with blocks"
224
+ --assert strict-equal? [[1 ]] [[1 ]]
225
+ --assert not strict-equal? [[1 ]] [(1 )]
226
+
227
+ ===end-group===
228
+
229
+ ;- tests from Red Language...
230
+ ===start-group=== "prefix equal same datatype"
231
+ --test-- "prefix-equal-same-datatype-1" --assert equal? 0 0
232
+ --test-- "prefix-equal-same-datatype-2" --assert equal? 1 1
233
+ --test-- "prefix-equal-same-datatype-3" --assert equal? 0 #FFFFFFFFFFFFFFFF -1
234
+ --test-- "prefix-equal-same-datatype-4" --assert equal? [] []
235
+ --test-- "prefix-equal-same-datatype-5" --assert equal? [a] [a]
236
+ --test-- "prefix-equal-same-datatype-6" --assert equal? [A] [a]
237
+ --test-- "prefix-equal-same-datatype-7" --assert equal? ['a] [a]
238
+ --test-- "prefix-equal-same-datatype-8" --assert equal? [a: ] [a]
239
+ --test-- "prefix-equal-same-datatype-9" --assert equal? [:a ] [a]
240
+ --test-- "prefix-equal-same-datatype-10" --assert equal? [:a ] [a: ]
241
+ --test-- "prefix-equal-same-datatype-11" --assert equal? [abcde] [abcde]
242
+ --test-- "prefix-equal-same-datatype-12" --assert equal? [a b c d] [a b c d]
243
+ --test-- "prefix-equal-same-datatype-13" --assert equal? [b c d] next [a b c d]
244
+ --test-- "prefix-equal-same-datatype-14" --assert equal? [b c d] (next [a b c d])
245
+ --test-- "prefix-equal-same-datatype-15" --assert equal? "a" "a"
246
+ --test-- "prefix-equal-same-datatype-16" --assert equal? "a" "A"
247
+ --test-- "prefix-equal-same-datatype-17" --assert equal? "abcdeè" "abcdeè"
248
+ --test-- "prefix-equal-same-datatype-18" --assert equal? (next "abcdeè" ) next "abcdeè"
249
+ --test-- "prefix-equal-same-datatype-19" --assert equal? (first "abcdeè" ) first "abcdeè"
250
+ --test-- "prefix-equal-same-datatype-20" --assert equal? (last "abcdeè" ) last "abcdeè"
251
+ --test-- "prefix-equal-same-datatype-21" --assert equal? "abcde^(2710) é" "abcde^(2710) é"
252
+ --test-- "prefix-equal-same-datatype-22" --assert equal? [d] back tail [a b c d]
253
+ --test-- "prefix-equal-same-datatype-23" --assert equal? "2345" next "12345"
254
+ --test-- "prefix-equal-same-datatype-24" --assert equal? #"z" #"z"
255
+ --test-- "prefix-equal-same-datatype-25" --assert equal? #"z" #"Z" ;@@ in Red this is not equal!
256
+ --test-- "prefix-equal-same-datatype-25" --red-- --assert not equal? #"z" #"Z"
257
+ --test-- "prefix-equal-same-datatype-26" --assert not equal? #"e" #"è"
258
+ ; --test-- "prefix-equal-same-datatype-27" --assert equal? #"^(010000)" #"^(010000)"
259
+ --test-- "prefix-equal-same-datatype-28" --assert equal? true true
260
+ --test-- "prefix-equal-same-datatype-29" --assert equal? false false
261
+ --test-- "prefix-equal-same-datatype-30" --assert not equal? false true
262
+ --test-- "prefix-equal-same-datatype-31" --assert not equal? true false
263
+ --test-- "prefix-equal-same-datatype-32" --assert equal? none none
264
+ --test-- "prefix-equal-same-datatype-33" --assert equal? 'a 'a
265
+ --test-- "prefix-equal-same-datatype-34" --assert equal? 'a 'A
266
+ --test-- "prefix-equal-same-datatype-35" --assert equal? (first [a]) first [a]
267
+ --test-- "prefix-equal-same-datatype-36" --assert equal? 'a first [A]
268
+ --test-- "prefix-equal-same-datatype-37" --assert equal? 'a first ['a]
269
+ --test-- "prefix-equal-same-datatype-38" --assert equal? 'a first [:a ]
270
+ --test-- "prefix-equal-same-datatype-39" --assert equal? 'a first [a: ]
271
+ --test-- "prefix-equal-same-datatype-40" --assert equal? (first [a: ]) first [a: ]
272
+ --test-- "prefix-equal-same-datatype-41" --assert equal? (first [:a ]) first [:a ]
273
+ --test-- "prefix-equal-same-datatype-42" --assert equal? [a b c d e] first [[a b c d e]]
274
+ --test-- "prefix-equal-same-datatype-43" ea-result: 1 = 1 --assert ea-result = true
275
+ --test-- "prefix-equal-same-datatype-44" ea-result: 1 = 0 --assert ea-result = false
276
+ --test-- "prefix-equal-same-datatype-45" ea-result: equal? 1 1 --assert ea-result = true
277
+ --test-- "prefix-equal-same-datatype-46" ea-result: equal? 1 0 --assert ea-result = false
278
+ ===end-group===
279
+
280
+ ===start-group=== "prefix strict-equal same datatype"
281
+ --test-- "prefix-strict-equal-same-datatype-1" --assert strict-equal? 0 0
282
+ --test-- "prefix-strict-equal-same-datatype-2" --assert strict-equal? 1 1
283
+ --test-- "prefix-strict-equal-same-datatype-3" --assert strict-equal? 0 #FFFFFFFFFFFFFFFF -1
284
+ --test-- "prefix-strict-equal-same-datatype-4" --assert strict-equal? [] []
285
+ --test-- "prefix-strict-equal-same-datatype-5" --assert strict-equal? [a] [a]
286
+ --test-- "prefix-strict-equal-same-datatype-6" --assert not strict-equal? [A] [a]
287
+ --test-- "prefix-strict-equal-same-datatype-7" --assert not strict-equal? ['a] [a]
288
+ --test-- "prefix-strict-equal-same-datatype-8" --assert not strict-equal? [a: ] [a]
289
+ --test-- "prefix-strict-equal-same-datatype-9" --assert not strict-equal? [:a ] [a]
290
+ --test-- "prefix-strict-equal-same-datatype-10" --assert not strict-equal? [:a ] [a: ]
291
+ --test-- "prefix-strict-equal-same-datatype-11" --assert strict-equal? [abcde] [abcde]
292
+ --test-- "prefix-strict-equal-same-datatype-12" --assert strict-equal? [a b c d] [a b c d]
293
+ --test-- "prefix-strict-equal-same-datatype-13" --assert strict-equal? [b c d] next [a b c d]
294
+ --test-- "prefix-strict-equal-same-datatype-14" --assert strict-equal? [b c d] (next [a b c d])
295
+ --test-- "prefix-strict-equal-same-datatype-15" --assert strict-equal? "a" "a"
296
+ --test-- "prefix-strict-equal-same-datatype-16" --assert not strict-equal? "a" "A"
297
+ --test-- "prefix-strict-equal-same-datatype-17" --assert strict-equal? "abcdeè" "abcdeè"
298
+ --test-- "prefix-strict-equal-same-datatype-18" --assert strict-equal? (next "abcdeè" ) next "abcdeè"
299
+ --test-- "prefix-strict-equal-same-datatype-19" --assert strict-equal? (first "abcdeè" ) first "abcdeè"
300
+ --test-- "prefix-strict-equal-same-datatype-20" --assert strict-equal? (last "abcdeè" ) last "abcdeè"
301
+ --test-- "prefix-strict-equal-same-datatype-21" --assert strict-equal? "abcde^(2710) é" "abcde^(2710) é"
302
+ --test-- "prefix-strict-equal-same-datatype-22" --assert strict-equal? [d] back tail [a b c d]
303
+ --test-- "prefix-strict-equal-same-datatype-23" --assert strict-equal? "2345" next "12345"
304
+ --test-- "prefix-strict-equal-same-datatype-24" --assert strict-equal? #"z" #"z"
305
+ --test-- "prefix-strict-equal-same-datatype-25" --assert not strict-equal? #"z" #"Z"
306
+ --test-- "prefix-strict-equal-same-datatype-26" --assert not strict-equal? #"e" #"è"
307
+ ; --test-- "prefix-strict-equal-same-datatype-27" --assert strict-equal? #"^(010000)" #"^(010000)"
308
+ --test-- "prefix-strict-equal-same-datatype-28" --assert strict-equal? true true
309
+ --test-- "prefix-strict-equal-same-datatype-29" --assert strict-equal? false false
310
+ --test-- "prefix-strict-equal-same-datatype-30" --assert not strict-equal? false true
311
+ --test-- "prefix-strict-equal-same-datatype-31" --assert not strict-equal? true false
312
+ --test-- "prefix-strict-equal-same-datatype-32" --assert strict-equal? none none
313
+ --test-- "prefix-strict-equal-same-datatype-33" --assert strict-equal? 'a 'a
314
+ --test-- "prefix-strict-equal-same-datatype-34" --assert not strict-equal? 'a 'A
315
+ --test-- "prefix-strict-equal-same-datatype-35" --assert strict-equal? (first [a]) first [a]
316
+ --test-- "prefix-strict-equal-same-datatype-36" --assert strict-equal? 'a first [a]
317
+ --test-- "prefix-strict-equal-same-datatype-37" --assert not strict-equal? 'a first ['a]
318
+ --test-- "prefix-strict-equal-same-datatype-38" --assert not strict-equal? 'a first [:a ]
319
+ --test-- "prefix-strict-equal-same-datatype-39" --assert not strict-equal? 'a first [a: ]
320
+ --test-- "prefix-strict-equal-same-datatype-40" --assert strict-equal? (first [a: ]) first [a: ]
321
+ --test-- "prefix-strict-equal-same-datatype-41" --assert strict-equal? (first [:a ]) first [:a ]
322
+ --test-- "prefix-strict-equal-same-datatype-42" --assert strict-equal? [a b c d e] first [[a b c d e]]
323
+ --test-- "prefix-strict-equal-same-datatype-43" ea-result: 1 == 1 --assert ea-result = true
324
+ --test-- "prefix-strict-equal-same-datatype-44" ea-result: 1 == 0 --assert ea-result = false
325
+ ===end-group===
326
+
327
+ ===start-group=== "prefix equal implcit cast"
328
+ --test-- "prefix-equal-implcit-cast-1" --assert equal? #"0" 48
329
+ --test-- "prefix-equal-implcit-cast-2" --assert equal? 48 #"0"
330
+ --test-- "prefix-equal-implcit-cast-3" --assert equal? #"^(2710)" 10000
331
+ ; --test-- "prefix-equal-implcit-cast-4" --assert equal? #"^(010000)" 65536
332
+ --test-- "prefix-equal-implcit-cast-5" ea-result: #"1" = 49 --assert ea-result = true
333
+ ===end-group===
334
+
335
+ ===start-group=== "prefix-greater-same-datatype"
336
+ --test-- "prefix-greater-same-datatype-1" --assert not greater? 0 0
337
+ --test-- "prefix-greater-same-datatype-2" --assert greater? 1 0
338
+ --test-- "prefix-greater-same-datatype-3" --assert not greater? 1 1
339
+ --test-- "prefix-greater-same-datatype-4" --assert not greater? 0 #FFFFFFFFFFFFFFFF -1
340
+ --test-- "prefix-greater-same-datatype-5" --assert greater? -1 0 #FFFFFFFFFFFFFFFE
341
+ --test-- "prefix-greater-same-datatype-6" --assert not greater? -2 0 #FFFFFFFFFFFFFFFF
342
+ --test-- "prefix-greater-same-datatype-7" --assert not greater? "a" "a"
343
+ --test-- "prefix-greater-same-datatype-8" --assert greater? "b" "a"
344
+ --test-- "prefix-greater-same-datatype-9" --assert greater? "è" "f"
345
+ --test-- "prefix-greater-same-datatype-10" --assert not greater? "A" "a"
346
+ --test-- "prefix-greater-same-datatype-11" --assert not greater? "a" "A"
347
+ --test-- "prefix-greater-same-datatype-12" --assert not greater? "abcdeè" "abcdeè"
348
+ --test-- "prefix-greater-same-datatype-13" --assert not greater? (next "abcdeè" ) next "abcdeè"
349
+ --test-- "prefix-greater-same-datatype-14" --assert not greater? (first "abcdeè" ) first "abcdeè"
350
+ --test-- "prefix-greater-same-datatype-15" --assert not greater? (last "abcdeè" ) last "abcdeè"
351
+ --test-- "prefix-greater-same-datatype-16" --assert not greater? "abcde^(2710) é" "abcde^(2710) é"
352
+ --test-- "prefix-greater-same-datatype-17" --assert not greater? "2345" next "12345"
353
+ --test-- "prefix-greater-same-datatype-18" --assert not greater? #"z" #"z"
354
+ --test-- "prefix-greater-same-datatype-19" --assert greater? #"z" #"Z"
355
+ --test-- "prefix-greater-same-datatype-20" --assert greater? #"è" #"e"
356
+ ; --test-- "prefix-greater-same-datatype-21" --assert not greater? #"^(010000)" #"^(010000)"
357
+ ===end-group===
358
+
359
+
162
360
~~~end-file~~~
0 commit comments