Browse Source

Remove the WithContainers concept...

...from the `ItemsPresenter` virtualization tests. All tests were setting it to `true` anyway.
Steven Kirk 6 years ago
parent
commit
5853723e5b

+ 79 - 89
tests/Avalonia.Controls.UnitTests/Presenters/ItemsPresenterTests_Virtualization_Simple.cs

@@ -756,6 +756,80 @@ namespace Avalonia.Controls.UnitTests.Presenters
             Assert.Same(target.Panel.Children[9].DataContext, last);
         }
 
+        [Fact]
+        public void Scrolling_Less_Than_A_Page_Should_Move_Recycled_Items()
+        {
+            var target = CreateTarget();
+            var items = (IList<string>)target.Items;
+
+            target.ApplyTemplate();
+            target.Measure(new Size(100, 100));
+            target.Arrange(new Rect(0, 0, 100, 100));
+
+            var containers = target.Panel.Children.ToList();
+            var scroller = (ScrollContentPresenter)target.Parent;
+
+            scroller.Offset = new Vector(0, 5);
+
+            var scrolledContainers = containers
+                .Skip(5)
+                .Take(5)
+                .Concat(containers.Take(5)).ToList();
+
+            Assert.Equal(new Vector(0, 5), ((ILogicalScrollable)target).Offset);
+            Assert.Equal(scrolledContainers, target.Panel.Children);
+
+            for (var i = 0; i < target.Panel.Children.Count; ++i)
+            {
+                Assert.Equal(items[i + 5], target.Panel.Children[i].DataContext);
+            }
+
+            scroller.Offset = new Vector(0, 0);
+            Assert.Equal(new Vector(0, 0), ((ILogicalScrollable)target).Offset);
+            Assert.Equal(containers, target.Panel.Children);
+
+            var dcs = target.Panel.Children.Select(x => x.DataContext).ToList();
+
+            for (var i = 0; i < target.Panel.Children.Count; ++i)
+            {
+                Assert.Equal(items[i], target.Panel.Children[i].DataContext);
+            }
+        }
+
+        [Fact]
+        public void Scrolling_More_Than_A_Page_Should_Recycle_Items()
+        {
+            var target = CreateTarget(itemCount: 50);
+            var items = (IList<string>)target.Items;
+
+            target.ApplyTemplate();
+            target.Measure(new Size(100, 100));
+            target.Arrange(new Rect(0, 0, 100, 100));
+
+            var containers = target.Panel.Children.ToList();
+            var scroller = (ScrollContentPresenter)target.Parent;
+
+            scroller.Offset = new Vector(0, 20);
+
+            Assert.Equal(new Vector(0, 20), ((ILogicalScrollable)target).Offset);
+            Assert.Equal(containers, target.Panel.Children);
+
+            for (var i = 0; i < target.Panel.Children.Count; ++i)
+            {
+                Assert.Equal(items[i + 20], target.Panel.Children[i].DataContext);
+            }
+
+            scroller.Offset = new Vector(0, 0);
+
+            Assert.Equal(new Vector(0, 0), ((ILogicalScrollable)target).Offset);
+            Assert.Equal(containers, target.Panel.Children);
+
+            for (var i = 0; i < target.Panel.Children.Count; ++i)
+            {
+                Assert.Equal(items[i], target.Panel.Children[i].DataContext);
+            }
+        }
+
         public class Vertical
         {
             [Fact]
@@ -941,86 +1015,8 @@ namespace Avalonia.Controls.UnitTests.Presenters
             }
         }
 
-        public class WithContainers
-        {
-            [Fact]
-            public void Scrolling_Less_Than_A_Page_Should_Move_Recycled_Items()
-            {
-                var target = CreateTarget();
-                var items = (IList<string>)target.Items;
-
-                target.ApplyTemplate();
-                target.Measure(new Size(100, 100));
-                target.Arrange(new Rect(0, 0, 100, 100));
-
-                var containers = target.Panel.Children.ToList();
-                var scroller = (ScrollContentPresenter)target.Parent;
-
-                scroller.Offset = new Vector(0, 5);
-
-                var scrolledContainers = containers
-                    .Skip(5)
-                    .Take(5)
-                    .Concat(containers.Take(5)).ToList();
-
-                Assert.Equal(new Vector(0, 5), ((ILogicalScrollable)target).Offset);
-                Assert.Equal(scrolledContainers, target.Panel.Children);
-
-                for (var i = 0; i < target.Panel.Children.Count; ++i)
-                {
-                    Assert.Equal(items[i + 5], target.Panel.Children[i].DataContext);
-                }
-
-                scroller.Offset = new Vector(0, 0);
-                Assert.Equal(new Vector(0, 0), ((ILogicalScrollable)target).Offset);
-                Assert.Equal(containers, target.Panel.Children);
-
-                var dcs = target.Panel.Children.Select(x => x.DataContext).ToList();
-
-                for (var i = 0; i < target.Panel.Children.Count; ++i)
-                {
-                    Assert.Equal(items[i], target.Panel.Children[i].DataContext);
-                }
-            }
-
-            [Fact]
-            public void Scrolling_More_Than_A_Page_Should_Recycle_Items()
-            {
-                var target = CreateTarget(itemCount: 50);
-                var items = (IList<string>)target.Items;
-
-                target.ApplyTemplate();
-                target.Measure(new Size(100, 100));
-                target.Arrange(new Rect(0, 0, 100, 100));
-
-                var containers = target.Panel.Children.ToList();
-                var scroller = (ScrollContentPresenter)target.Parent;
-
-                scroller.Offset = new Vector(0, 20);
-
-                Assert.Equal(new Vector(0, 20), ((ILogicalScrollable)target).Offset);
-                Assert.Equal(containers, target.Panel.Children);
-
-                for (var i = 0; i < target.Panel.Children.Count; ++i)
-                {
-                    Assert.Equal(items[i + 20], target.Panel.Children[i].DataContext);
-                }
-
-                scroller.Offset = new Vector(0, 0);
-
-                Assert.Equal(new Vector(0, 0), ((ILogicalScrollable)target).Offset);
-                Assert.Equal(containers, target.Panel.Children);
-
-                for (var i = 0; i < target.Panel.Children.Count; ++i)
-                {
-                    Assert.Equal(items[i], target.Panel.Children[i].DataContext);
-                }
-            }
-        }
-
         private static ItemsPresenter CreateTarget(
             Orientation orientation = Orientation.Vertical,
-            bool useContainers = true,
             int itemCount = 20,
             bool useAvaloniaList = false)
         {
@@ -1034,7 +1030,7 @@ namespace Avalonia.Controls.UnitTests.Presenters
             {
                 CanHorizontallyScroll = true,
                 CanVerticallyScroll = true,
-                Content = result = new TestItemsPresenter(useContainers)
+                Content = result = new TestItemsPresenter
                 {
                     Items = items,
                     ItemsPanel = VirtualizingPanelTemplate(orientation),
@@ -1085,18 +1081,12 @@ namespace Avalonia.Controls.UnitTests.Presenters
 
         private class TestItemsPresenter : ItemsPresenter
         {
-            private bool _useContainers;
-
-            public TestItemsPresenter(bool useContainers)
-            {
-                _useContainers = useContainers;
-            }
-
             protected override IItemContainerGenerator CreateItemContainerGenerator()
             {
-                return _useContainers ?
-                    new ItemContainerGenerator<TestContainer>(this, TestContainer.ContentProperty, null) :
-                    new ItemContainerGenerator(this);
+                return new ItemContainerGenerator<TestContainer>(
+                    this,
+                    TestContainer.ContentProperty,
+                    null);
             }
         }