public void DistributeSpaceInTrackWithGap() { MockApplication app = MockApplication.Setup <FlexHorizontalWrap_DistributeSpaceInTrack>(); FlexHorizontalWrap_DistributeSpaceInTrack root = (FlexHorizontalWrap_DistributeSpaceInTrack)app.RootElement; root.style.SetFlexLayoutGapHorizontal(10, StyleState.Normal); root.style.SetFlexLayoutGapVertical(10, StyleState.Normal); root.style.SetDistributeExtraSpaceHorizontal(SpaceDistribution.AfterContent, StyleState.Normal); app.Update(); Assert.AreEqual(new Rect(0, 0, 200, 100), root[0].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(210, 0, 200, 100), root[1].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(0, 110, 390, 100), root[2].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(400, 110, 200, 100), root[3].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(0, 220, 200, 100), root[4].layoutResult.AllocatedRect); root.style.SetDistributeExtraSpaceHorizontal(SpaceDistribution.BeforeContent, StyleState.Normal); app.Update(); Assert.AreEqual(new Rect(190, 0, 200, 100), root[0].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(400, 0, 200, 100), root[1].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(0, 110, 390, 100), root[2].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(400, 110, 200, 100), root[3].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(400, 220, 200, 100), root[4].layoutResult.AllocatedRect); root.style.SetDistributeExtraSpaceHorizontal(SpaceDistribution.BetweenContent, StyleState.Normal); app.Update(); Assert.AreEqual(new Rect(0, 0, 200, 100), root[0].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(400, 0, 200, 100), root[1].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(0, 110, 390, 100), root[2].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(400, 110, 200, 100), root[3].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(200, 220, 200, 100), root[4].layoutResult.AllocatedRect); // gap is not applied when AroundContent distribution is used. root.style.SetDistributeExtraSpaceHorizontal(SpaceDistribution.AroundContent, StyleState.Normal); app.Update(); Assert.AreEqual(new Rect(50, 0, 200, 100), root[0].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(350, 0, 200, 100), root[1].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(0, 110, 400, 100), root[2].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(400, 110, 200, 100), root[3].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(200, 220, 200, 100), root[4].layoutResult.AllocatedRect); root.style.SetDistributeExtraSpaceHorizontal(SpaceDistribution.CenterContent, StyleState.Normal); app.Update(); Assert.AreEqual(new Rect(95, 0, 200, 100), root[0].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(305, 0, 200, 100), root[1].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(0, 110, 390, 100), root[2].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(400, 110, 200, 100), root[3].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(200, 220, 200, 100), root[4].layoutResult.AllocatedRect); }
public void DistributeSpaceInTrack() { MockApplication app = MockApplication.Setup <FlexHorizontalWrap_DistributeSpaceInTrack>(); FlexHorizontalWrap_DistributeSpaceInTrack root = (FlexHorizontalWrap_DistributeSpaceInTrack)app.RootElement; root.style.SetDistributeExtraSpaceHorizontal(SpaceDistribution.AfterContent, StyleState.Normal); app.Update(); Assert.AreEqual(new Rect(0, 0, 200, 100), root[0].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(200, 0, 200, 100), root[1].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(0, 100, 400, 100), root[2].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(400, 100, 200, 100), root[3].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(0, 200, 200, 100), root[4].layoutResult.AllocatedRect); root.style.SetDistributeExtraSpaceHorizontal(SpaceDistribution.BeforeContent, StyleState.Normal); app.Update(); Assert.AreEqual(new Rect(200, 0, 200, 100), root[0].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(400, 0, 200, 100), root[1].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(0, 100, 400, 100), root[2].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(400, 100, 200, 100), root[3].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(400, 200, 200, 100), root[4].layoutResult.AllocatedRect); root.style.SetDistributeExtraSpaceHorizontal(SpaceDistribution.BetweenContent, StyleState.Normal); app.Update(); Assert.AreEqual(new Rect(0, 0, 200, 100), root[0].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(400, 0, 200, 100), root[1].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(0, 100, 400, 100), root[2].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(400, 100, 200, 100), root[3].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(200, 200, 200, 100), root[4].layoutResult.AllocatedRect); root.style.SetDistributeExtraSpaceHorizontal(SpaceDistribution.AroundContent, StyleState.Normal); app.Update(); Assert.AreEqual(new Rect(50, 0, 200, 100), root[0].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(350, 0, 200, 100), root[1].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(0, 100, 400, 100), root[2].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(400, 100, 200, 100), root[3].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(200, 200, 200, 100), root[4].layoutResult.AllocatedRect); root.style.SetDistributeExtraSpaceHorizontal(SpaceDistribution.CenterContent, StyleState.Normal); app.Update(); Assert.AreEqual(new Rect(100, 0, 200, 100), root[0].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(300, 0, 200, 100), root[1].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(0, 100, 400, 100), root[2].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(400, 100, 200, 100), root[3].layoutResult.AllocatedRect); Assert.AreEqual(new Rect(200, 200, 200, 100), root[4].layoutResult.AllocatedRect); }