@@ -23,6 +23,8 @@ module Testable.Element exposing
2323 , maximum
2424 , minimum
2525 , moveDown
26+ , moveLeft
27+ , moveRight
2628 , moveUp
2729 , none
2830 , onLeft
@@ -104,6 +106,12 @@ textColumn =
104106 Testable.TextColumn
105107
106108
109+{-| Old labeling mechanism that i removed to hastily
110+-}
111+label str =
112+ Testable.Batch []
113+
114+
107115moveUp x =
108116 Testable.Attr (Element.moveUp x)
109117
@@ -112,6 +120,14 @@ moveDown x =
112120 Testable.Attr (Element.moveDown x)
113121
114122
123+moveRight x =
124+ Testable.Attr (Element.moveRight x)
125+
126+
127+moveLeft x =
128+ Testable.Attr (Element.moveLeft x)
129+
130+
115131type Length
116132 = Px Int
117133 | Fill Int
@@ -156,11 +172,6 @@ fillPortion =
156172 Fill
157173
158174
159−label : String -> Testable.Attr msg
160−label =
161− Testable.Label
162−
163−
164175transparent : Bool -> Testable.Attr msg
165176transparent on =
166177 Testable.LabeledTest
@@ -172,7 +183,7 @@ transparent on =
172183 "opaque"
173184 , attr = Element.transparent on
174185 , test =
175− \context _ ->
186+ \context ->
176187 let
177188 selfTransparency =
178189 context.self.style
@@ -186,7 +197,7 @@ transparent on =
186197 else
187198 "1"
188199 in
189− Expect.equal value selfTransparency
200+ [ Testable.equal value selfTransparency ]
190201 }
191202
192203
@@ -197,8 +208,8 @@ isVisible =
197208 { label = "is-visible"
198209 , attr = Element.htmlAttribute (Html.Attributes.style "not" "applicable")
199210 , test =
200− \context _ ->
201− Expect.equal context.self.isVisible True
211+ \context ->
212+ [ Testable.equal context.self.isVisible True ]
202213 }
203214
204215
@@ -209,14 +220,14 @@ alpha a =
209220 { label = "alpha-" ++ String.fromFloat a
210221 , attr = Element.alpha a
211222 , test =
212− \context _ ->
223+ \context ->
213224 let
214225 selfTransparency =
215226 context.self.style
216227 |> Dict.get "opacity"
217228 |> Maybe.withDefault "notfound"
218229 in
219− Expect.equal (String.fromFloat a) selfTransparency
230+ [ Testable.equal (String.fromFloat a) selfTransparency ]
220231 }
221232
222233
@@ -227,8 +238,8 @@ padding pad =
227238 { label = "padding " ++ String.fromInt pad
228239 , attr = Element.padding pad
229240 , test =
230− \found _ ->
231− Expect.true ("Padding " ++ String.fromInt pad ++ " is present")
241+ \found ->
242+ [ Testable.true ("Padding " ++ String.fromInt pad ++ " is present")
232243 (List.all ((==) pad)
233244 [ floor found.self.bbox.padding.left
234245 , floor found.self.bbox.padding.right
@@ -236,6 +247,7 @@ padding pad =
236247 , floor found.self.bbox.padding.bottom
237248 ]
238249 )
250+ ]
239251 }
240252
241253
@@ -246,8 +258,8 @@ paddingXY x y =
246258 { label = "paddingXY " ++ String.fromInt x ++ ", " ++ String.fromInt y
247259 , attr = Element.paddingXY x y
248260 , test =
249− \found _ ->
250− Expect.true ("PaddingXY (" ++ String.fromInt x ++ ", " ++ String.fromInt y ++ ") is present")
261+ \found ->
262+ [ Testable.true ("PaddingXY (" ++ String.fromInt x ++ ", " ++ String.fromInt y ++ ") is present")
251263 (List.all ((==) x)
252264 [ floor found.self.bbox.padding.left
253265 , floor found.self.bbox.padding.right
@@ -257,6 +269,7 @@ paddingXY x y =
257269 , floor found.self.bbox.padding.bottom
258270 ]
259271 )
272+ ]
260273 }
261274
262275
@@ -326,18 +339,20 @@ widthHelper maybeMin maybeMax len =
326339 |> addMax
327340 )
328341 , test =
329− \found _ ->
330− Expect.all
331− [ \_ ->
332− Expect.true "exact width is exact" (floor found.self.bbox.width == val)
333− , \_ -> Expect.true "min/max is upheld" (minMaxTest (floor found.self.bbox.width))
334− ]
335− ()
342+ \found ->
343+ [ Testable.true "exact width is exact" (floor found.self.bbox.width == val)
344+ , Testable.true "min/max is upheld" (minMaxTest (floor found.self.bbox.width))
345+ ]
336346 }
337347
338348 Fill portion ->
339349 Testable.LabeledTest
340− { label = "width fill-" ++ String.fromInt portion ++ minLabel ++ maxLabel
350+ { label =
351+ if portion == 1 then
352+ "width fill" ++ minLabel ++ maxLabel
353+
354+ else
355+ "width fill-" ++ String.fromInt portion ++ minLabel ++ maxLabel
341356 , attr =
342357 Element.width
343358 (Element.fillPortion portion
@@ -345,30 +360,30 @@ widthHelper maybeMin maybeMax len =
345360 |> addMax
346361 )
347362 , test =
348− \context _ ->
363+ \context ->
349364 if List.member context.location [ Testable.IsNearby Testable.OnRight, Testable.IsNearby Testable.OnLeft ] then
350− Expect.true "width fill doesn't apply to onright/onleft elements" True
365+ [ Testable.true "width fill doesn't apply to onright/onleft elements" True ]
351366
352367 else
353368 let
354369 parentAvailableWidth =
355370 context.parent.bbox.width - (context.self.bbox.padding.left + context.self.bbox.padding.right)
356371 in
357− case context.location of
372+ [ case context.location of
358373 Testable.IsNearby _ ->
359− Expect.true "Nearby Element has fill width"
374+ Testable.true "Nearby Element has fill width"
360375 ((floor context.parent.bbox.width == floor context.self.bbox.width)
361376 || minMaxTest (floor context.self.bbox.width)
362377 )
363378
364379 Testable.InColumn ->
365− Expect.true "Element within column has fill width"
380+ Testable.true "Element within column has fill width"
366381 ((floor parentAvailableWidth == floor context.self.bbox.width)
367382 || minMaxTest (floor context.self.bbox.width)
368383 )
369384
370385 Testable.InEl ->
371− Expect.true "Element within element has fill width" <|
386+ Testable.true "Element within element has fill width" <|
372387 (floor parentAvailableWidth == floor context.self.bbox.width)
373388 || minMaxTest (floor context.self.bbox.width)
374389
@@ -377,9 +392,10 @@ widthHelper maybeMin maybeMax len =
377392 spacePerPortion =
378393 parentAvailableWidth / toFloat (List.length context.siblings + 1)
379394 in
380− Expect.true "element has fill width" <|
395+ Testable.true "element has fill width" <|
381396 (floor spacePerPortion == floor context.self.bbox.width)
382397 || minMaxTest (floor context.self.bbox.width)
398+ ]
383399 }
384400
385401 Shrink ->
@@ -392,7 +408,7 @@ widthHelper maybeMin maybeMax len =
392408 |> addMax
393409 )
394410 , test =
395− \context _ ->
411+ \context ->
396412 let
397413 childWidth child =
398414 -- TODO: add margin values to widths
@@ -412,12 +428,12 @@ widthHelper maybeMin maybeMax len =
412428 if totalChildren == 0 then
413429 -- TODO: The issue is that we have a hard time measuring `text` elements
414430 -- So if a element has a text child, then it's width isn't going to show up in the system.
415− expectRoundedEquality context.self.bbox.width context.self.bbox.width
431+ [ expectRoundedEquality context.self.bbox.width context.self.bbox.width ]
416432
417433 else
418434 -- This fails if this element is actually a column
419435 -- So we need to capture what this element is in order to do this calculation.
420− expectRoundedEquality (totalChildren + horizontalPadding + spacingValue) context.self.bbox.width
436+ [ expectRoundedEquality (totalChildren + horizontalPadding + spacingValue) context.self.bbox.width ]
421437 }
422438
423439
@@ -487,16 +503,12 @@ heightHelper maybeMin maybeMax len =
487503 |> addMax
488504 )
489505 , test =
490− \found _ ->
491− Expect.all
492− [ \_ ->
493− Expect.true ("exact height is exact: " ++ String.fromInt (floor found.self.bbox.height) ++ "," ++ String.fromInt val)
494− (floor found.self.bbox.height == val)
495− , \_ ->
496− Expect.true "min/max holds true"
497− (minMaxTest (floor found.self.bbox.height))
498− ]
499− ()
506+ \found ->
507+ [ Testable.true ("exact height is exact: " ++ String.fromInt (floor found.self.bbox.height) ++ "," ++ String.fromInt val)
508+ (floor found.self.bbox.height == val)
509+ , Testable.true "min/max holds true"
510+ (minMaxTest (floor found.self.bbox.height))
511+ ]
500512 }
501513
502514 Fill portion ->
@@ -509,30 +521,30 @@ heightHelper maybeMin maybeMax len =
509521 |> addMax
510522 )
511523 , test =
512− \context _ ->
513− if List.member context.location [ Testable.IsNearby Testable.Above, Testable.IsNearby Testable.Below ] then
514− Expect.true "height fill doesn't apply to above/below elements" True
524+ \context ->
525+ [ if List.member context.location [ Testable.IsNearby Testable.Above, Testable.IsNearby Testable.Below ] then
526+ Testable.true "height fill doesn't apply to above/below elements" True
515527
516− else
528+ else
517529 let
518530 parentAvailableHeight =
519531 context.parent.bbox.height - (context.self.bbox.padding.top + context.self.bbox.padding.bottom)
520532 in
521533 case context.location of
522534 Testable.IsNearby _ ->
523− Expect.true "Nearby Element has fill height"
535+ Testable.true "Nearby Element has fill height"
524536 ((floor context.parent.bbox.height == floor context.self.bbox.height)
525537 || minMaxTest (floor context.self.bbox.height)
526538 )
527539
528540 Testable.InColumn ->
529− Expect.true "Element within column has fill height"
541+ Testable.true "Element within column has fill height"
530542 ((floor parentAvailableHeight == floor context.self.bbox.height)
531543 || minMaxTest (floor context.self.bbox.height)
532544 )
533545
534546 Testable.InEl ->
535− Expect.true "Element within el has fill height" <|
547+ Testable.true "Element within el has fill height" <|
536548 (floor parentAvailableHeight == floor context.self.bbox.height)
537549 || minMaxTest (floor context.self.bbox.height)
538550
@@ -541,9 +553,10 @@ heightHelper maybeMin maybeMax len =
541553 spacePerPortion =
542554 parentAvailableHeight / toFloat (List.length context.siblings + 1)
543555 in
544− Expect.true "el has fill height" <|
556+ Testable.true "el has fill height" <|
545557 (floor spacePerPortion == floor context.self.bbox.height)
546558 || minMaxTest (floor context.self.bbox.height)
559+ ]
547560 }
548561
549562 Shrink ->
@@ -556,7 +569,7 @@ heightHelper maybeMin maybeMax len =
556569 |> addMax
557570 )
558571 , test =
559− \context _ ->
572+ \context ->
560573 let
561574 childWidth child =
562575 -- TODO: add margin values to heights
@@ -576,12 +589,12 @@ heightHelper maybeMin maybeMax len =
576589 if totalChildren == 0 then
577590 -- TODO: The issue is that we have a hard time measuring `text` elements
578591 -- So if a element has a text child, then it's height isn't going to show up in the system.
579− expectRoundedEquality context.self.bbox.height context.self.bbox.height
592+ [ expectRoundedEquality context.self.bbox.height context.self.bbox.height ]
580593
581594 else
582595 -- This fails if this element is actually a column
583596 -- So we need to capture what this element is in order to do this calculation.
584− expectRoundedEquality (totalChildren + verticalPadding + spacingValue) context.self.bbox.height
597+ [ expectRoundedEquality (totalChildren + verticalPadding + spacingValue) context.self.bbox.height ]
585598 }
586599
587600
@@ -603,7 +616,7 @@ spacing space =
603616 { label = "spacing: " ++ String.fromInt space
604617 , attr = Element.spacing space
605618 , test =
606− \found _ ->
619+ \found ->
607620 let
608621 findDistance child total =
609622 List.concatMap
@@ -649,7 +662,7 @@ spacing space =
649662 []
650663 distances
651664 in
652− Expect.true
665+ [ Testable.true
653666 ("All children are at least "
654667 ++ String.fromInt space
655668 ++ " pixels apart."
@@ -657,6 +670,7 @@ spacing space =
657670 ++ " are not though"
658671 )
659672 (allAreSpaced == [])
673+ ]
660674 }
661675 ]
662676
@@ -680,28 +694,28 @@ alignLeft =
680694 { label = "alignLeft"
681695 , attr = Element.alignLeft
682696 , test =
683− \found _ ->
684− if List.member found.location [ Testable.IsNearby Testable.OnLeft, Testable.IsNearby Testable.OnRight ] then
685− Expect.true "alignLeft doesn't apply to elements that are onLeft or onRight" True
697+ \found ->
698+ [ if List.member found.location [ Testable.IsNearby Testable.OnLeft, Testable.IsNearby Testable.OnRight ] then
699+ Testable.true "alignLeft doesn't apply to elements that are onLeft or onRight" True
686700
687− else if
701+ else if
688702 List.member found.location
689703 [ Testable.IsNearby Testable.InFront
690704 , Testable.IsNearby Testable.Behind
691705 , Testable.IsNearby Testable.Above
692706 , Testable.IsNearby Testable.Below
693707 ]
694− then
708+ then
695709 expectRoundedEquality
696710 found.self.bbox.left
697711 found.parent.bbox.left
698712
699− else if List.length found.siblings == 0 then
713+ else if List.length found.siblings == 0 then
700714 expectRoundedEquality
701715 found.self.bbox.left
702716 (found.parent.bbox.left + found.parent.bbox.padding.left)
703717
704− else
718+ else
705719 case found.location of
706720 Testable.InRow ->
707721 let
@@ -724,6 +738,7 @@ alignLeft =
724738 expectRoundedEquality
725739 found.self.bbox.left
726740 (found.parent.bbox.left + found.parent.bbox.padding.left)
741+ ]
727742 }
728743
729744
@@ -734,7 +749,7 @@ centerX =
734749 { label = "centerX"
735750 , attr = Element.centerX
736751 , test =
737− \found _ ->
752+ \found ->
738753 let
739754 selfCenter : Float
740755 selfCenter =
@@ -745,12 +760,13 @@ centerX =
745760 found.parent.bbox.left + (found.parent.bbox.width / 2)
746761 in
747762 if List.member found.location [ Testable.IsNearby Testable.OnRight, Testable.IsNearby Testable.OnLeft ] then
748− Expect.true "centerX doesn't apply to elements that are onLeft or onRight" True
763+ [ Testable.true "centerX doesn't apply to elements that are onLeft or onRight" True ]
749764
750765 else if List.length found.siblings == 0 then
751− expectRoundedEquality
766+ [ expectRoundedEquality
752767 selfCenter
753768 parentCenter
769+ ]
754770
755771 else
756772 case found.location of
@@ -783,12 +799,13 @@ centerX =
783799 / 2
784800 )
785801 in
786− expectRoundedEquality
802+ [ expectRoundedEquality
787803 selfCenter
788804 expectedCenter
805+ ]
789806
790807 _ ->
791− expectRoundedEquality selfCenter parentCenter
808+ [ expectRoundedEquality selfCenter parentCenter ]
792809 }
793810
794811
@@ -799,9 +816,9 @@ alignRight =
799816 { label = "alignRight"
800817 , attr = Element.alignRight
801818 , test =
802− \found _ ->
819+ \found ->
803820 if List.member found.location [ Testable.IsNearby Testable.OnLeft, Testable.IsNearby Testable.OnRight ] then
804− Expect.true "alignRight doesn't apply to elements that are onLeft or onRight" True
821+ [ Testable.true "alignRight doesn't apply to elements that are onLeft or onRight" True ]
805822
806823 else if
807824 List.member found.location
@@ -811,14 +828,16 @@ alignRight =
811828 , Testable.IsNearby Testable.Below
812829 ]
813830 then
814− expectRoundedEquality
831+ [ expectRoundedEquality
815832 found.self.bbox.right
816833 found.parent.bbox.right
834+ ]
817835
818836 else if List.length found.siblings == 0 then
819− expectRoundedEquality
837+ [ expectRoundedEquality
820838 found.self.bbox.right
821839 (found.parent.bbox.right + found.parent.bbox.padding.right)
840+ ]
822841
823842 else
824843 case found.location of
@@ -835,14 +854,16 @@ alignRight =
835854 |> List.map (.width << .bbox)
836855 |> List.sum
837856 in
838− expectRoundedEquality
857+ [ expectRoundedEquality
839858 found.self.bbox.right
840859 (found.parent.bbox.right - (found.parent.bbox.padding.right + widthsOnRight + spacings))
860+ ]
841861
842862 _ ->
843− expectRoundedEquality
863+ [ expectRoundedEquality
844864 found.self.bbox.right
845865 (found.parent.bbox.right + found.parent.bbox.padding.right)
866+ ]
846867 }
847868
848869
@@ -853,9 +874,9 @@ alignTop =
853874 { label = "alignTop"
854875 , attr = Element.alignTop
855876 , test =
856− \found _ ->
877+ \found ->
857878 if List.member found.location [ Testable.IsNearby Testable.Above, Testable.IsNearby Testable.Below ] then
858− Expect.true "alignTop doesn't apply to elements that are above or below" True
879+ [ Testable.true "alignTop doesn't apply to elements that are above or below" True ]
859880
860881 else if
861882 List.member found.location
@@ -865,14 +886,16 @@ alignTop =
865886 , Testable.IsNearby Testable.OnLeft
866887 ]
867888 then
868− expectRoundedEquality
889+ [ expectRoundedEquality
869890 found.self.bbox.top
870891 found.parent.bbox.top
892+ ]
871893
872894 else if List.length found.siblings == 0 then
873− expectRoundedEquality
895+ [ expectRoundedEquality
874896 found.self.bbox.top
875897 (found.parent.bbox.top + found.parent.bbox.padding.top)
898+ ]
876899
877900 else
878901 case found.location of
@@ -889,14 +912,16 @@ alignTop =
889912 |> List.map (.height << .bbox)
890913 |> List.sum
891914 in
892− expectRoundedEquality
915+ [ expectRoundedEquality
893916 found.self.bbox.top
894917 (found.parent.bbox.top + (found.parent.bbox.padding.top + heightsAbove + spacings))
918+ ]
895919
896920 _ ->
897− expectRoundedEquality
921+ [ expectRoundedEquality
898922 found.self.bbox.top
899923 found.parent.bbox.top
924+ ]
900925 }
901926
902927
@@ -907,9 +932,9 @@ alignBottom =
907932 { label = "alignBottom"
908933 , attr = Element.alignBottom
909934 , test =
910− \found _ ->
935+ \found ->
911936 if List.member found.location [ Testable.IsNearby Testable.Above, Testable.IsNearby Testable.Below ] then
912− Expect.true "alignBottom doesn't apply to elements that are above or below" True
937+ [ Testable.true "alignBottom doesn't apply to elements that are above or below" True ]
913938
914939 else if
915940 List.member found.location
@@ -919,14 +944,16 @@ alignBottom =
919944 , Testable.IsNearby Testable.OnLeft
920945 ]
921946 then
922− expectRoundedEquality
947+ [ expectRoundedEquality
923948 found.self.bbox.bottom
924949 found.parent.bbox.bottom
950+ ]
925951
926952 else if List.length found.siblings == 0 then
927− expectRoundedEquality
953+ [ expectRoundedEquality
928954 found.self.bbox.bottom
929955 (found.parent.bbox.bottom + found.parent.bbox.padding.bottom)
956+ ]
930957
931958 else
932959 case found.location of
@@ -943,22 +970,30 @@ alignBottom =
943970 |> List.map (.height << .bbox)
944971 |> List.sum
945972 in
946− expectRoundedEquality
973+ [ expectRoundedEquality
947974 found.self.bbox.bottom
948975 (found.parent.bbox.bottom - (found.parent.bbox.padding.bottom + heightsBelow + spacings))
976+ ]
949977
950978 _ ->
951− expectRoundedEquality
979+ [ expectRoundedEquality
952980 found.self.bbox.bottom
953981 (found.parent.bbox.bottom + found.parent.bbox.padding.bottom)
982+ ]
954983 }
955984
956985
957986expectRoundedEquality x y =
958− Expect.true ("within 1 of each other " ++ String.fromFloat x ++ ":" ++ String.fromFloat y)
987+ Testable.true
988+ ("within 1 of each other " ++ floatToString x ++ ", " ++ floatToString y)
959989 (abs (x - y) < 1)
960990
961991
992+floatToString : Float -> String
993+floatToString x =
994+ String.fromFloat (toFloat (round (x * 100)) / 100)
995+
996+
962997{-| -}
963998centerY : Testable.Attr msg
964999centerY =
@@ -966,7 +1001,7 @@ centerY =
9661001 { label = "centerY"
9671002 , attr = Element.centerY
9681003 , test =
969− \found _ ->
1004+ \found ->
9701005 let
9711006 selfCenter =
9721007 found.self.bbox.top + (found.self.bbox.height / 2)
@@ -975,12 +1010,13 @@ centerY =
9751010 found.parent.bbox.top + (found.parent.bbox.height / 2)
9761011 in
9771012 if List.member found.location [ Testable.IsNearby Testable.Above, Testable.IsNearby Testable.Below ] then
978− Expect.true "centerY doesn't apply to elements that are above or below" True
1013+ [ Testable.true "centerY doesn't apply to elements that are above or below" True ]
9791014
9801015 else if List.length found.siblings == 0 then
981− expectRoundedEquality
1016+ [ expectRoundedEquality
9821017 selfCenter
9831018 parentCenter
1019+ ]
9841020
9851021 else
9861022 case found.location of
@@ -1013,12 +1049,13 @@ centerY =
10131049 / 2
10141050 )
10151051 in
1016− expectRoundedEquality
1052+ [ expectRoundedEquality
10171053 selfCenter
10181054 expectedCenter
1055+ ]
10191056
10201057 _ ->
1021− expectRoundedEquality selfCenter parentCenter
1058+ [ expectRoundedEquality selfCenter parentCenter ]
10221059 }
10231060
10241061
@@ -1030,8 +1067,8 @@ above element =
10301067 , element = element
10311068 , label = "above"
10321069 , test =
1033− \found _ ->
1034− expectRoundedEquality found.self.bbox.bottom found.parent.bbox.top
1070+ \found ->
1071+ [ expectRoundedEquality found.self.bbox.bottom found.parent.bbox.top ]
10351072 }
10361073
10371074
@@ -1043,8 +1080,8 @@ below element =
10431080 , element = element
10441081 , label = "below"
10451082 , test =
1046− \found _ ->
1047− expectRoundedEquality found.self.bbox.top found.parent.bbox.bottom
1083+ \found ->
1084+ [ expectRoundedEquality found.self.bbox.top found.parent.bbox.bottom ]
10481085 }
10491086
10501087
@@ -1056,8 +1093,8 @@ onRight element =
10561093 , element = element
10571094 , label = "onRight"
10581095 , test =
1059− \found _ ->
1060− expectRoundedEquality found.self.bbox.left found.parent.bbox.right
1096+ \found ->
1097+ [ expectRoundedEquality found.self.bbox.left found.parent.bbox.right ]
10611098 }
10621099
10631100
@@ -1069,8 +1106,8 @@ onLeft element =
10691106 , element = element
10701107 , label = "onLeft"
10711108 , test =
1072− \found _ ->
1073− expectRoundedEquality found.self.bbox.right found.parent.bbox.left
1109+ \found ->
1110+ [ expectRoundedEquality found.self.bbox.right found.parent.bbox.left ]
10741111 }
10751112
10761113
@@ -1086,11 +1123,12 @@ inFront element =
10861123 , element = element
10871124 , label = "inFront"
10881125 , test =
1089− withinHelper
1126+ \found ->
1127+ [ withinHelper found ]
10901128 }
10911129
10921130
1093−withinHelper found _ =
1131+withinHelper found =
10941132 let
10951133 horizontalCheck =
10961134 if found.self.bbox.width > found.parent.bbox.width then
@@ -1114,7 +1152,7 @@ withinHelper found _ =
11141152 , compare found.self.bbox.bottom (<=) found.parent.bbox.bottom
11151153 ]
11161154 in
1117− Expect.true "within the confines of the parent"
1155+ Testable.true "within the confines of the parent"
11181156 (List.all ((==) True)
11191157 (List.concat
11201158 [ horizontalCheck
@@ -1132,5 +1170,6 @@ behindContent element =
11321170 , element = element
11331171 , label = "behindContent"
11341172 , test =
1135− withinHelper
1173+ \found ->
1174+ [ withinHelper found ]
11361175 }