on master help sign in
additional tests of layering support
commitb3382fece485e493b744a9a32090349441ce8bbc authorCorey O'Connor <corey@ooyala.com> dateSat 17 Aug 2013, 21:58 (13 years ago) parenta64145a
1 file changed+39−6
test/VerifyLayersSpanGeneration.hs+39−6
test/VerifyLayersSpanGeneration.hs+39−6
@@ -53,8 +53,8 @@ vert_stack_layer_equivalence_1 row_0 row_1 =
5353
5454-- | Two rows horiz joined is equivalent to the first row rendered as the top layer and the
5555-- second row rendered as a bottom layer with a background fill where the first row would be.
56−horiz_stack_layer_equivalence_0 :: SingleRowSingleAttrImage -> SingleRowSingleAttrImage -> Result
57−horiz_stack_layer_equivalence_0 row_0 row_1 =
56+horiz_join_layer_equivalence_0 :: SingleRowSingleAttrImage -> SingleRowSingleAttrImage -> Result
57+horiz_join_layer_equivalence_0 row_0 row_1 =
5858 let i_0 = row_image row_0
5959 i_1 = row_image row_1
6060 i = i_0 <|> i_1
@@ -65,8 +65,8 @@ horiz_stack_layer_equivalence_0 row_0 row_1 =
6565 ops_layered = display_ops_for_pic p_layered $ DisplayRegion (image_width i_lower) (image_height i_lower)
6666 in verify_ops_equality expected_ops ops_layered
6767
68−horiz_stack_layer_equivalence_1 :: SingleRowSingleAttrImage -> SingleRowSingleAttrImage -> Result
69−horiz_stack_layer_equivalence_1 row_0 row_1 =
68+horiz_join_layer_equivalence_1 :: SingleRowSingleAttrImage -> SingleRowSingleAttrImage -> Result
69+horiz_join_layer_equivalence_1 row_0 row_1 =
7070 let i_0 = row_image row_0
7171 i_1 = row_image row_1
7272 i = i_0 <|> i_1
@@ -78,6 +78,35 @@ horiz_stack_layer_equivalence_1 row_0 row_1 =
7878 ops_layered = display_ops_for_pic p_layered $ DisplayRegion (image_width i_lower) (image_height i_lower)
7979 in verify_ops_equality expected_ops ops_layered
8080
81+horiz_join_alternate_0 :: Result
82+horiz_join_alternate_0 =
83+ let size = 4
84+ str_0 = replicate size 'a'
85+ str_1 = replicate size 'b'
86+ i_0 = string def_attr str_0
87+ i_1 = string def_attr str_1
88+ i = horiz_cat $ zipWith horiz_join (replicate size i_0) (replicate size i_1)
89+ layer_0 = horiz_cat $ replicate size $ i_0 <|> background_fill size 1
90+ layer_1 = horiz_cat $ replicate size $ background_fill size 1 <|> i_1
91+ expected_ops = display_ops_for_image i
92+ ops_layered = display_ops_for_pic (pic_for_layers [layer_0, layer_1])
93+ (DisplayRegion (image_width i) (image_height i))
94+ in verify_ops_equality expected_ops ops_layered
95+
96+horiz_join_alternate_1 :: Result
97+horiz_join_alternate_1 =
98+ let size = 4
99+ str_0 = replicate size 'a'
100+ str_1 = replicate size 'b'
101+ i_0 = string def_attr str_0
102+ i_1 = string def_attr str_1
103+ i = horiz_cat $ zipWith horiz_join (replicate size i_0) (replicate size i_1)
104+ layers = [l | b <- take 4 [0,size*2..], let l = background_fill b 1 <|> i_0 <|> i_1]
105+ expected_ops = display_ops_for_image i
106+ ops_layered = display_ops_for_pic (pic_for_layers layers)
107+ (DisplayRegion (image_width i) (image_height i))
108+ in verify_ops_equality expected_ops ops_layered
109+
81110tests :: IO [Test]
82111tests = return
83112 [ verify "a larger horiz span occludes a smaller span on a lower layer"
@@ -87,8 +116,12 @@ tests = return
87116 , verify "two rows stack vertical equiv to first image layered on top of second with padding (1)"
88117 vert_stack_layer_equivalence_1
89118 , verify "two rows horiz joined equiv to first image layered on top of second with padding (0)"
90− horiz_stack_layer_equivalence_0
119+ horiz_join_layer_equivalence_0
91120 , verify "two rows horiz joined equiv to first image layered on top of second with padding (1)"
92− horiz_stack_layer_equivalence_1
121+ horiz_join_layer_equivalence_1
122+ , verify "alternating images using joins is the same as alternating images using layers (0)"
123+ horiz_join_alternate_0
124+ , verify "alternating images using joins is the same as alternating images using layers (1)"
125+ horiz_join_alternate_1
93126 ]
94127