summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorJason Creighton <jcreigh@gmail.com>2007-04-11 06:42:15 +0200
committerJason Creighton <jcreigh@gmail.com>2007-04-11 06:42:15 +0200
commit14d62be4ec0bbdbc8d44dd5f606b5b7018f9149f (patch)
tree13fa85ae236834e80dbd8beb428c33312f38a731 /tests
parent9b4025ea874d7f5140f0e836ad21277e42996f89 (diff)
downloadmetatile-14d62be4ec0bbdbc8d44dd5f606b5b7018f9149f.tar
metatile-14d62be4ec0bbdbc8d44dd5f606b5b7018f9149f.zip
fromList/toList have # of screens + another QC property
darcs-hash:20070411044215-b9aa7-e66ef93fac9102201bfd145ebb26c38bbecd25de
Diffstat (limited to 'tests')
-rw-r--r--tests/Properties.hs10
1 files changed, 9 insertions, 1 deletions
diff --git a/tests/Properties.hs b/tests/Properties.hs
index 41f729d..4a4a4b2 100644
--- a/tests/Properties.hs
+++ b/tests/Properties.hs
@@ -24,8 +24,9 @@ instance (Ord a, Arbitrary a) => Arbitrary (StackSet a) where
arbitrary = do
sz <- choose (1,20)
n <- choose (0,sz-1)
+ sc <- choose (1,sz)
ls <- vector sz
- return $ fromList (n,ls)
+ return $ fromList (n,sc,ls)
coarbitrary = error "no coarbitrary for StackSet"
prop_id x = fromList (toList x) == x
@@ -96,6 +97,12 @@ prop_ws2screen_screen2ws x = (ws == ws') && (sc == sc')
sc' = sort . elems $ ws2screen x
_ = x :: T
+prop_screenworkspace x = all test [0..((size x)-1)]
+ where test ws = case screen ws x of
+ Nothing -> True
+ Just sc -> workspace sc x == Just ws
+ _ = x :: T
+
------------------------------------------------------------------------
main :: IO ()
@@ -122,6 +129,7 @@ main = do
,("fullcache ", mytest prop_fullcache)
,("currentwsvisible ", mytest prop_currentwsvisible)
,("ws screen mapping", mytest prop_ws2screen_screen2ws)
+ ,("screen/workspace ", mytest prop_screenworkspace)
]
debug = False