]> gitweb.factorcode.org Git - factor.git/blob - core/hash-sets/hash-sets-tests.factor
Moving new-sets to sets
[factor.git] / core / hash-sets / hash-sets-tests.factor
1 ! Copyright (C) 2010 Daniel Ehrenberg
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: sets tools.test kernel sorting prettyprint hash-sets ;
4 IN: hash-sets.tests
5
6 [ { 1 2 3 } ] [ HS{ 1 2 3 } members natural-sort ] unit-test
7
8 [ "HS{ 1 2 3 4 }" ] [ HS{ 1 2 3 4 } unparse ] unit-test
9
10 [ t ] [ 1 HS{ 0 1 2 } in? ] unit-test
11 [ f ] [ 3 HS{ 0 1 2 } in? ] unit-test
12 [ HS{ 1 2 3 } ] [ 3 HS{ 1 2 } clone [ adjoin ] keep ] unit-test
13 [ HS{ 1 2 } ] [ 2 HS{ 1 2 } clone [ adjoin ] keep ] unit-test
14 [ HS{ 1 2 3 } ] [ 4 HS{ 1 2 3 } clone [ delete ] keep ] unit-test
15 [ HS{ 1 2 } ] [ 3 HS{ 1 2 3 } clone [ delete ] keep ] unit-test
16 [ HS{ 1 2 } ] [ HS{ 1 2 } fast-set ] unit-test
17 [ { 1 2 } ] [ HS{ 1 2 } members natural-sort ] unit-test
18
19 [ HS{ 1 2 3 4 } ] [ HS{ 1 2 3 } HS{ 2 3 4 } union ] unit-test
20 [ HS{ 2 3 } ] [ HS{ 1 2 3 } HS{ 2 3 4 } intersect ] unit-test
21 [ t ] [ HS{ 1 2 3 } HS{ 2 3 4 } intersects? ] unit-test
22 [ f ] [ HS{ 1 } HS{ 2 3 4 } intersects? ] unit-test
23 [ f ] [ HS{ 1 } HS{ 2 3 4 } subset? ] unit-test
24 [ f ] [ HS{ 1 2 3 } HS{ 2 3 4 } subset? ] unit-test
25 [ t ] [ HS{ 2 3 } HS{ 2 3 4 } subset? ] unit-test
26 [ t ] [ HS{ } HS{ 2 3 4 } subset? ] unit-test
27 [ HS{ 1 } ] [ HS{ 1 2 3 } HS{ 2 3 4 } diff ] unit-test
28 [ t ] [ HS{ 1 2 3 } HS{ 2 1 3 } set= ] unit-test
29 [ t ] [ HS{ 1 2 3 } HS{ 2 1 3 } = ] unit-test
30 [ f ] [ HS{ 2 3 } HS{ 2 1 3 } set= ] unit-test
31 [ f ] [ HS{ 1 2 3 } HS{ 2 3 } set= ] unit-test
32
33 [ HS{ 1 2 } HS{ 1 2 3 } ] [ HS{ 1 2 } clone dup clone [ 3 swap adjoin ] keep ] unit-test