@@ -69,18 +69,23 @@ newtype ImageResize = ImageResize (Image -> (Image, (Int, Int)))
70instance Arbitrary ImageResize where
70instance Arbitrary ImageResize where
71 arbitrary = oneof
71 arbitrary = oneof
72+ [ return $! ImageResize $! \i -> (i, (image_width i, image_height i))
73+ , return $! ImageResize $! \i -> (i, (image_width i, image_height i))
74+ , return $! ImageResize $! \i -> (i, (image_width i, image_height i))
75+ , return $! ImageResize $! \i -> (i, (image_width i, image_height i))
76+ , return $! ImageResize $! \i -> (i, (image_width i, image_height i))
72− [ return $ ImageResize $ \i -> (i, (image_width i, image_height i))
77+ , return $! ImageResize $! \i -> (i, (image_width i, image_height i))
74 ImageResize f <- arbitrary
79 ImageResize f <- arbitrary
75 WidthResize g <- arbitrary
80 WidthResize g <- arbitrary
76− return $ ImageResize $ \i ->
81+ return $! ImageResize $! \i ->
77 let (i_0, (_, out_height)) = f i
82 let (i_0, (_, out_height)) = f i
78 g_i = g i_0
83 g_i = g i_0
79 in (fst g_i, (snd g_i, out_height))
84 in (fst g_i, (snd g_i, out_height))
81 ImageResize f <- arbitrary
86 ImageResize f <- arbitrary
82 HeightResize g <- arbitrary
87 HeightResize g <- arbitrary
83− return $ ImageResize $ \i ->
88+ return $! ImageResize $! \i ->
84 let (i_0, (out_width, _)) = f i
89 let (i_0, (out_width, _)) = f i
85 g_i = g i_0
90 g_i = g i_0
86 in (fst g_i, (out_width, snd g_i))
91 in (fst g_i, (out_width, snd g_i))
@@ -134,18 +139,26 @@ instance Arbitrary Image where
135 SingleAttrSingleSpanStack {stack_image} <- arbitrary
140 SingleAttrSingleSpanStack {stack_image} <- arbitrary
136 ImageResize f <- arbitrary
141 ImageResize f <- arbitrary
142+ return $! fst $! f stack_image
144+ SingleAttrSingleSpanStack {stack_image} <- arbitrary
145+ ImageResize f <- arbitrary
146+ return $! fst $! f stack_image
148+ SingleAttrSingleSpanStack {stack_image} <- arbitrary
149+ ImageResize f <- arbitrary
137− return $ fst $ f stack_image
150+ return $! fst $! f stack_image
139 i_0 <- arbitrary
152 i_0 <- arbitrary
140 i_1 <- arbitrary
153 i_1 <- arbitrary
141 let i = i_0 <|> i_1
154 let i = i_0 <|> i_1
142 ImageResize f <- arbitrary
155 ImageResize f <- arbitrary
143− return $ fst $ f i
156+ return $! fst $! f i
145 i_0 <- arbitrary
158 i_0 <- arbitrary
146 i_1 <- arbitrary
159 i_1 <- arbitrary
147 let i = i_0 <-> i_1
160 let i = i_0 <-> i_1
148 ImageResize f <- arbitrary
161 ImageResize f <- arbitrary
149− return $ fst $ f i
162+ return $! fst $! f i