mirror of
https://github.com/xmonad/xmonad.git
synced 2025-05-19 08:30:21 -07:00
more properties for splitting horizontally and vertically
This commit is contained in:
parent
90eae3fd63
commit
750544fda9
@ -666,6 +666,44 @@ prop_tile_non_overlap rect windows nmaster = noOverlaps (tile pct rect nmaster w
|
|||||||
where _ = rect :: Rectangle
|
where _ = rect :: Rectangle
|
||||||
pct = 3 % 100
|
pct = 3 % 100
|
||||||
|
|
||||||
|
-- splitting horizontally yields sensible results
|
||||||
|
prop_split_hoziontal (NonNegative n) x =
|
||||||
|
{-
|
||||||
|
trace (show (rect_x x
|
||||||
|
,rect_width x
|
||||||
|
,rect_x x + fromIntegral (rect_width x)
|
||||||
|
,map rect_x xs))
|
||||||
|
$
|
||||||
|
-}
|
||||||
|
|
||||||
|
sum (map rect_width xs) == rect_width x
|
||||||
|
&&
|
||||||
|
all (== rect_height x) (map rect_height xs)
|
||||||
|
&&
|
||||||
|
(map rect_x xs) == (sort $ map rect_x xs)
|
||||||
|
|
||||||
|
where
|
||||||
|
xs = splitHorizontally n x
|
||||||
|
|
||||||
|
-- splitting horizontally yields sensible results
|
||||||
|
prop_splitVertically (r :: Rational) x =
|
||||||
|
|
||||||
|
rect_x x == rect_x a && rect_x x == rect_x b
|
||||||
|
&&
|
||||||
|
rect_width x == rect_width a && rect_width x == rect_width b
|
||||||
|
|
||||||
|
{-
|
||||||
|
trace (show (rect_x x
|
||||||
|
,rect_width x
|
||||||
|
,rect_x x + fromIntegral (rect_width x)
|
||||||
|
,map rect_x xs))
|
||||||
|
$
|
||||||
|
-}
|
||||||
|
|
||||||
|
where
|
||||||
|
(a,b) = splitVerticallyBy r x
|
||||||
|
|
||||||
|
|
||||||
-- pureLayout works.
|
-- pureLayout works.
|
||||||
prop_purelayout_tall n r1 r2 rect (t :: T) =
|
prop_purelayout_tall n r1 r2 rect (t :: T) =
|
||||||
isJust (peek t) ==>
|
isJust (peek t) ==>
|
||||||
@ -752,6 +790,10 @@ prop_desc_full = description Full == show Full
|
|||||||
|
|
||||||
------------------------------------------------------------------------
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
|
prop_desc_mirror n r1 r2 = description (Mirror $! t) == "Mirror Tall"
|
||||||
|
where t = Tall n r1 r2
|
||||||
|
|
||||||
|
------------------------------------------------------------------------
|
||||||
|
|
||||||
noOverlaps [] = True
|
noOverlaps [] = True
|
||||||
noOverlaps [_] = True
|
noOverlaps [_] = True
|
||||||
@ -896,6 +938,9 @@ main = do
|
|||||||
|
|
||||||
,("tile 1 window fullsize", mytest prop_tile_fullscreen)
|
,("tile 1 window fullsize", mytest prop_tile_fullscreen)
|
||||||
,("tiles never overlap", mytest prop_tile_non_overlap)
|
,("tiles never overlap", mytest prop_tile_non_overlap)
|
||||||
|
,("split hozizontally", mytest prop_split_hoziontal)
|
||||||
|
,("split verticalBy", mytest prop_splitVertically)
|
||||||
|
|
||||||
,("pure layout tall", mytest prop_purelayout_tall)
|
,("pure layout tall", mytest prop_purelayout_tall)
|
||||||
,("send shrink tall", mytest prop_shrink_tall)
|
,("send shrink tall", mytest prop_shrink_tall)
|
||||||
,("send expand tall", mytest prop_expand_tall)
|
,("send expand tall", mytest prop_expand_tall)
|
||||||
@ -907,6 +952,7 @@ main = do
|
|||||||
,("send message full", mytest prop_sendmsg_full)
|
,("send message full", mytest prop_sendmsg_full)
|
||||||
,("describe full", mytest prop_desc_full)
|
,("describe full", mytest prop_desc_full)
|
||||||
|
|
||||||
|
,("describe mirror", mytest prop_desc_mirror)
|
||||||
|
|
||||||
]
|
]
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user