1{-# LANGUAGE NamedFieldPuns #-} 2module VerifyImageTrans where 3 4import Verify.Graphics.Vty.Image 5 6import Graphics.Vty.Image.Internal 7 8import Verify 9 10import Data.Word 11 12isHorizTextOfColumns :: Image -> Int -> Bool 13isHorizTextOfColumns (HorizText { outputWidth = inW }) expectedW = inW == expectedW 14isHorizTextOfColumns (BGFill { outputWidth = inW }) expectedW = inW == expectedW 15isHorizTextOfColumns _image _expectedW = False 16 17verifyHorizContatWoAttrChangeSimplifies :: SingleRowSingleAttrImage -> Bool 18verifyHorizContatWoAttrChangeSimplifies (SingleRowSingleAttrImage _attr charCount image) = 19 isHorizTextOfColumns image charCount 20 21verifyHorizContatWAttrChangeSimplifies :: SingleRowTwoAttrImage -> Bool 22verifyHorizContatWAttrChangeSimplifies ( SingleRowTwoAttrImage (SingleRowSingleAttrImage attr0 charCount0 _image0) 23 (SingleRowSingleAttrImage attr1 charCount1 _image1) 24 i 25 ) 26 | charCount0 == 0 || charCount1 == 0 || attr0 == attr1 = isHorizTextOfColumns i (charCount0 + charCount1) 27 | otherwise = False == isHorizTextOfColumns i (charCount0 + charCount1) 28 29tests :: IO [Test] 30tests = return 31 [ verify "verifyHorizContatWoAttrChangeSimplifies" verifyHorizContatWoAttrChangeSimplifies 32 , verify "verifyHorizContatWAttrChangeSimplifies" verifyHorizContatWAttrChangeSimplifies 33 ] 34 35