 
 [ f ] [ { 0 1 1 2 3 5 } all-unique? ] unit-test
 [ t ] [ { 0 1 2 3 4 5 } all-unique? ] unit-test
+[ t ] [ HS{ 0 1 2 3 4 5 } all-unique? ] unit-test
 
 [ t ] [ f null? ] unit-test
 [ f ] [ { 4 } null? ] unit-test
+[ t ] [ HS{ } null? ] unit-test
+[ f ] [ HS{ 3 } null? ] unit-test
+[ t ] [ 2 <bit-set> null? ] unit-test
+[ f ] [ 3 <bit-set> 0 over adjoin null? ] unit-test
 
 [ 0 ] [ f cardinality ] unit-test
 [ 0 ] [ { } cardinality ] unit-test
 [ 1 ] [ { 1 } cardinality ] unit-test
 [ 1 ] [ HS{ 1 } cardinality ] unit-test
 [ 3 ] [ HS{ 1 2 3 } cardinality ] unit-test
+[ 0 ] [ 0 <bit-set> cardinality ] unit-test
+[ 0 ] [ 5 <bit-set> cardinality ] unit-test
+[ 2 ] [ 5 <bit-set> 0 over adjoin 1 over adjoin cardinality ] unit-test
+[ 1 ] [ 5 <bit-set> 1 over adjoin cardinality ] unit-test
 
 [ { } ] [ { } { } within ] unit-test
 [ { 2 3 } ] [ { 1 2 3 } { 2 3 4 } within ] unit-test

[ { 1 1 } ] [ { 1 1 2 3 3 } { 2 3 4 4 } without ] unit-test

[ { 1 2 3 } ] [ { { 1 } { 2 } { 1 3 } } combine ] unit-test

[ H{ { 3 HS{ 1 2 } } } ] [ H{ } clone 1 3 pick adjoin-at 2 3 pick adjoin-at ] unit-test

[ H{ { 3 H{ { 1 1 } { 2 2 } } } } ] [ H{ } clone 1 3 pick conjoin-at 2 3 pick conjoin-at ] unit-test


! Copyright (C) 2010 Daniel Ehrenberg, Doug Coleman.
! See http://factorcode.org/license.txt for BSD license.
USING: sets tools.test kernel prettyprint hash-sets sorting
math sequences bit-sets bit-arrays ;
IN: sets.tests

[ V{ 1 2 3 } ] [ 3 V{ 1 2 } clone [ adjoin ] keep ] unit-test
