                 width: l3.sideLength,
                 height: l3.sideLength))
     }
-    
+
     func testVerticalSmallEnforcedFrameMatchingParent() {
         l1 = TestLayoutable(sideLength: 30, layoutModes: BayaLayoutOptions.Modes(width: .matchParent, height: .matchParent))
         l2 = TestLayoutable(sideLength: 60, layoutModes: BayaLayoutOptions.Modes(width: .matchParent, height: .matchParent))

                height: maxHeight - l3.verticalMargins))
    }

    func testVerticalSmallEnforcedFrame() {
        var layout = [l1, l2, l3]
            .layoutAsEqualSegments(

                width: maxWidth - l3.horizontalMargins,
                height: maxHeight - l3.verticalMargins))
    }

    func testHorizontalBigEnforcedFrameMatchingParent() {
        l1 = TestLayoutable(sideLength: 30, layoutModes: BayaLayoutOptions.Modes(width: .matchParent, height: .matchParent))
        l2 = TestLayoutable(sideLength: 60, layoutModes: BayaLayoutOptions.Modes(width: .matchParent, height: .matchParent))
        l3 = TestLayoutable(sideLength: 90, layoutModes: BayaLayoutOptions.Modes(width: .matchParent, height: .matchParent))
        l1.m(1, 2, 3, 4)
        l2.m(5, 6, 7, 8)
        l3.m(9, 10, 11, 12)
        
        var layout = [l1, l2, l3]
            .layoutAsEqualSegments(
                orientation: .horizontal,
                gutter: spacing)
        
        layout.layoutWith(frame: layoutRect)
        let availableSideLength = (layoutRect.width - spacing * 2) / 3 // Rect dictates the size
        
        XCTAssertEqual(
            l1.frame,
            CGRect(
                x: layoutRect.minX + l1.layoutMargins.left,
                y: layoutRect.minY + l1.layoutMargins.top,
                width: availableSideLength - l1.horizontalMargins,
                height: layoutRect.height - l1.verticalMargins))
        XCTAssertEqual(
            l2.frame,
            CGRect(
                x: layoutRect.minX
                    + availableSideLength
                    + spacing
                    + l2.layoutMargins.left,
                y: layoutRect.minY + l2.layoutMargins.top,
                width: availableSideLength - l2.horizontalMargins,
                height: layoutRect.height - l2.verticalMargins))
        XCTAssertEqual(
            l3.frame,
            CGRect(
                x: layoutRect.minX
                    + availableSideLength * 2
                    + spacing * 2
                    + l3.layoutMargins.left,
                y: layoutRect.minY + l3.layoutMargins.top,
                width: availableSideLength - l3.horizontalMargins,
                height: layoutRect.height - l3.verticalMargins))
    }

    func testHorizontalSmallEnforcedFrame() {
        var layout = [l1, l2, l3]
            .layoutAsEqualSegments(
